Đăng ký Đăng nhập
Trang chủ Nghiên cứu giao thức thiết lập phiên (SIP) ứng dụng cho xây dựng hệ thống dịch v...

Tài liệu Nghiên cứu giao thức thiết lập phiên (SIP) ứng dụng cho xây dựng hệ thống dịch vụ IP Centrex

.PDF
98
634
114

Mô tả:

LỜI CẢM ƠN Trước khi đi vào nội dung chính của luận văn, em xin chân thành cảm ơn Tiến sĩ Hoàng Minh, phó giám đốc Học viện Bưu chính Viễn thông, người đã hết sức tạo điều kiện về thời gian và công việc cũng như đã giúp đỡ và hướng dẫn em rất nhiều trong quá trình thực hiện và hoàn thiện đề tài. Em xin chân thành cảm ơn các thày, cô giáo khoa Công nghệ thông tin – Trường Đại học công nghệ - Đại học Quốc Gia Hà Nội đã chỉ dạy và cung cấp các kiến thức cơ bản trong suốt khóa học. Các kiến thức nền tảng này đã giúp em rất nhiều trong việc nghiên cứu và thiết kế các mô hình hệ thống cũng như lập trình các thành phần phần mềm. Em xin chân thành cảm ơn các anh lãnh đạo Trung tâm Công nghệ Thông tin CDiT, học viện Công nghệ Bưu chính Viễn thông nơi em công tác, đã tạo điều kiện về công việc để cho em có thêm nhiều thời gian thực hiện nghiên cứu. Tôi cũng xin chân thành cảm ơn các anh chị em đồng nghiệp tại Trung tâm Công nghệ Thông tin CDiT và các anh chị tại Công ty cổ phần đầu tư phát triển công nghệ và truyền thông – NEO, những người đã cổ vũ, động viên và giúp đỡ tôi rất nhiều về mặt kỹ thuật trong quá trình thực hiện đề tài nghiên cứu. Xin chân thành cảm ơn bạn bè và gia đình đã động viên, giúp đỡ tôi trong suốt quá trình học tập nghiên cứu để thực hiện thành công luận văn tốt nghiệp này. Hà Nội – tháng 11 năm 2006 Đỗ Đức Huy -1- MỤC LỤC LỜI CẢM ƠN ............................................................................................................................ 1 MỤC LỤC ................................................................................................................................. 1 DANH SÁCH HÌNH VẼ ........................................................................................................... 3 BẢNG CÁC TỪ VIẾT TẮT, THUẬT NGỮ ............................................................................. 5 MỞ ĐẦU ................................................................................................................................... 8 1. Đặt vấn đề ......................................................................................................................... 8 2. Phương pháp nghiên cứu ............................................................................................... 10 3. Nội dung báo cáo............................................................................................................ 10 Chương 1: TỔNG QUAN VỀ GIAO THỨC SIP .................................................................. 12 1.1. Giới thiệu giao thức .................................................................................................... 12 1.1.1. Lịch sử phát triển.................................................................................................. 12 1.1.2. SIP và H323 .......................................................................................................... 13 1.1.3. Vai trò của SIP trong mạng viễn thông............................................................... 15 1.2. Đặc điểm kỹ thuật của giao thức SIP ......................................................................... 18 1.2.1. Các đặc điểm kỹ thuật chính ................................................................................ 18 1.2.2. Cấu trúc giao thức................................................................................................ 30 Chương 2: CÁC VẤN ĐỀ VÀ KHẢO SÁT THỰC NGHIỆM ............................................... 36 2.1. Một số vấn đề thực tế với SIP ..................................................................................... 36 2.1.1. Ảnh hưởng của NAT ............................................................................................. 36 2.1.2. Các giải pháp vượt qua NAT ............................................................................... 38 2.1.3. Ảnh hưởng của firewall ........................................................................................ 42 2.2. Các khảo sát thực nghiệm ........................................................................................... 43 2.2.1. Các SIP softphone ................................................................................................ 44 2.2.2. Các SIP server ...................................................................................................... 45 Chương 3: IP CENTREX – MÔ HÌNH VÀ CÁC THÀNH PHẦN ....................................... 47 3.1. Tổng quan về IP Centrex ............................................................................................ 47 3.1.1. Khái niệm chung ................................................................................................... 47 3.1.2. Vị trí và chức năng của IP Centrex trong mạng NGN ....................................... 52 3.1.3. Cơ hội phát triển ở Việt Nam............................................................................... 58 3.2. Nghiên cứu một số giải pháp về IP Centrex .............................................................. 58 3.2.1. Cấu trúc tổng thể hệ thống IP-Centrex ............................................................... 58 3.2.2. Một số cấu trúc điển hình .................................................................................... 59 3.2.3. Phân tích và lựa chọn giải pháp.......................................................................... 67 Chương 4: ỨNG DỤNG SIP TRONG HỆ THỐNG IP-CENTREX..................................... 70 4.1. Mô hình thiết kế tổng thể hệ thống IP Centrex .......................................................... 70 4.1.1. Mô hình hóa hệ thống .......................................................................................... 70 4.1.2. Yêu cầu bài toán ................................................................................................... 73 4.2. Đề xuất giải pháp và mô hình thiết kế tổng thể ......................................................... 74 4.3. Thiết kế chi tiết các module hệ thống ......................................................................... 75 4.3.1. Phân hệ mạng ....................................................................................................... 75 4.3.2. Phân hệ media ...................................................................................................... 84 -24.3.3. Phân hệ dịch vụ .................................................................................................... 85 4.3.4. Phân hệ OAM ....................................................................................................... 89 4.3.5. Các dịch vụ của IP-Centrex ................................................................................. 90 Chương 5: THỬ NGHIỆM HỆ THỐNG ............................................................................... 92 5.1. Mục tiêu thử nghiệm .................................................................................................... 92 5.2. Mô hình hệ thống thử nghiệm ..................................................................................... 92 5.3. Nội dung thử nghiệm ................................................................................................... 92 5.3.1. Dịch vụ Call Forward – Busy .............................................................................. 93 5.3.2. Dịch vụ Single-Line Extension ............................................................................ 93 5.3.3. Dịch vụ music-on-hold ......................................................................................... 94 5.4. Kết quả thử nghiệm ..................................................................................................... 94 KẾT LUẬN .............................................................................................................................. 95 TÀI LIỆU THAM KHẢO ........................................................................................................ 97 Tài liệu tiếng Anh ............................................................................................................... 97 Địa chỉ các trang WEB....................................................................................................... 97 -3- DANH SÁCH HÌNH VẼ Hình 1. Vị trí của SIP trong mô hình NGN ...................................................................... 17 Hình 2. Lưu đồ đăng ký vị trí .......................................................................................... 25 Hình 3. Lưu đồ thiết lập phiên ........................................................................................ 27 Hình 4. SIP stack ............................................................................................................ 30 Hình 5. Tìm gọi không thành công do NAT timeout ......................................................... 38 Hình 6. Vị trí của STUN server trong hệ thống SIP ......................................................... 39 Hình 7. Lỗi chuyển đổi địa chỉ ngẫu nhiên ...................................................................... 41 Hình 8. Mô hình dịch vụ Centrex truyền thống................................................................ 47 Hình 9. Mô hình hệ thống cung cấp dịch vụ IP-Centrex .................................................. 49 Hình 10. Vai trò vị trí của IP Centrex trong NGN ........................................................... 56 Hình 11. Cấu trúc tổng thể hệ thống IP Centrex ............................................................. 58 Hình 12. Kiến trúc hệ thống IP Centrex dựa trên chuyển mạch Class 5 .......................... 60 Hình 13. Cấu trúc hệ thống IP Centrex sử dụng chuyển mạch mềm SoftSwitch ............... 62 Hình 14. Nguyên tắc xử lý cuộc gọi có dịch vụ trong Softswitch ..................................... 62 Hình 15. Hoạt động của một số dịch vụ dựa trên Softswitch ........................................... 63 Hình 16. Hướng xử lý cuộc gọi trong mô hình IP Centrex sử dụng Softswitch ................ 63 Hình 17. Giải pháp IP Centrex sử dụng Softswitch của LongBoard ................................ 64 Hình 18. Giải pháp IP Centrex sử dụng Softswitch của Convedia ................................... 65 Hình 19. Cấu trúc hệ thống IP Centrex sử dụng Call Server ........................................... 65 Hình 20. Giải pháp IP Centrex của GlobalTech.............................................................. 66 Hình 21. Kiến trúc phát triển dịch vụ trong hệ thống SURPASS của Siemens ................. 67 Hình 22. Mô hình tương tác giữa các tác nhân trong và ngoài IP Centrex ...................... 70 Hình 23. Thiết kế tổng thể phần mềm hệ thống IP-Centrex ............................................. 74 Hình 24. Hướng cuộc gọi trong IP Centrex..................................................................... 75 Hình 25. Cấu trúc phần mềm phân hệ mạng ................................................................... 76 Hình 26. Lưu đồ xử lý client transaction ......................................................................... 80 Hình 27. Lưu đồ xử lý server transaction:....................................................................... 81 Hình 28. Thiết kế phần mềm phân hệ media .................................................................... 84 Hình 29. Thiết kế phần mềm phân hệ dịch vụ .................................................................. 85 -4Hình 30. Mô hình hệ thống ............................................................................................. 89 Hình 31. Mô hình thử nghiệm IP-Centrex ....................................................................... 92 -5- BẢNG CÁC TỪ VIẾT TẮT, THUẬT NGỮ ACD Automatic Call Distribution AIN Advanced Intelligent Network API Application Programming Interface BER Bit Error Rate CDMA Code Division Multiplexing Access Centrex Central Office Exchange Service CFB Conference Block CGI Common Gateway Interface CHB Call Handling Block CO Central Office CRC Cycle Redundance Check CSB Call Setup Block CTI Computer Telecommunication Intergrated DHCP Dynamic Protol ETSI Euro Telecommunication Institutre FMC Fix to Mobile Convergence GSM Global System for Mobile Communications GUI Graphic User Interface HTTP Hyper Text Tranfer Protocol IETF Internet Engineering Task Force IN Intelligent Network IP Internet Protocol IPC Inter-Process Communication ISDN Intergrated Services Digital Network ITU International Telecommunication Union IVR Interactive Voice Response LAN Local Area Network LMAP Lightweight MTA Authentication Protocol LS Location Service MGCP Media Gateway Control Protocol -6MMI Man-Machine Interface MML Man-Machine Language NAT Network Address Translation NATP Network Address Translation Protocol NGN Next Generation Network OAM Operation and Management OSA Open Service Architecture PBX Private Branch Exchange PDA Personal Data Assistant PSTN Public Switched Telephone Network QoS Quality of Service RAS Remote Access Server RSVP Resource ReSerVation Protocol RTC Realtime Comunication RTCP Real Time Control Protocol RTP Real Time Protocol RTSP Real Time Streaming Protocol SCIP Simple Conference Invitation Protocol SDP Session Description Protocol SIP Session Initation Protocol SNMP Simple Network Management Protocol SPS SIP Proxy server STUN Simple Traversal of UDP through NAT TCP Transmission Protocol TDMA Time Division Multiplexing Access TFTP Trivival File Tranfer Protocol TLS Transport Layer Protocol TU Transaction User UAC User Agent Client UAS User Agent Server UDP User Datagram Protocol URI Uniform Resource Identifier -7URL Uniform Resource Locator VNPT Vietnam Posts and Telecomunications VoIP Voice over IP VPN Virtual Private Network XML Extended Markup Language -8- MỞ ĐẦU 1. Đặt vấn đề Central office exchange service – Centrex – là một hệ thống cung cấp dịch vụ đặt tại phía tổng đài nhằm cung cấp các dịch vụ thoại (như quay số tắt, chặn số gọi, tạm ngừng cuộc gọi…) tương tự như một hệ thống tổng đài PBX. Dịch vụ này đã được triển khai từ đầu những năm 1960 với các hệ thống analog và ISDN nhằm cung cấp các đường truyền thuê riêng để tổ chức nên các nhóm thoại riêng biệt cho từng tổ chức đơn vị sử dụng. Do có nhiều lợi ích nên thời gian đầu hệ thống nhận được sự hưởng ứng và phát triển mạnh. Nửa cuối những năm 1990, với xuất hiện của công nghệ Voice over IP, chi phí cho các dịch vụ viễn thông giảm đã ảnh hướng lớn đến sự phát triển của các hệ thống Centrex truyền thống. Mặt khác, dịch vụ Centrex truyền thống cũng không đáp ứng được những đòi hỏi ngày càng cao của người sử dụng theo xu hướng hội tụ của viễn thông và internet. Sự ra đời của IP Centrex là một hướng tất yếu nhằm thay thế dần cho các hệ thống dịch vụ truyền thống. Thay vì sử dụng công nghệ chuyển mạch kênh PSTN truyền thống, IP Centrex sử dụng IP làm cơ sở truyền dẫn nhằm kết hợp cả mạng thoại và mạng dữ liệu, làm tăng hiệu quả hoạt động của hệ thống và mở rộng mức độ cung cấp dịch vụ từ cục bộ lên mức toàn cầu. Hiện nay, một thành phần ngày càng trở nên thiết yếu và đóng vai trò quan trọng trong IPCentrex đó là giao thức khởi tạo phiên SIP. Vốn được thiết kế để phục vụ cho IP phone, nhưng SIP không chỉ đơn giản là một giao thức telephony mà cũng rất phù hợp cho các ứng dụng multimedia, đặc biệt là đối với messaging. Các SIP server có thể liên kết với nhau tạo nên môi trường dịch vụ trên phạm vi rộng, có thể phối hợp với các gateway để đạt tới các vùng dịch vụ non-SIP, cũng như có thể cung cấp dịch vụ với các media server, feature server phù hợp. Trước kia, trong các hệ thống Centrex truyền thống cũng như với hiện trạng hệ thống mạng viễn thông, người ta chủ yếu sử dụng giao thức H323, việc nghiên cứu ứng dụng SIP còn chưa được chú ý. Hiện nay, ngày càng nhiều các hãng danh tiếng trên thế giới như BroadSoft, LongBoard… đã chú trọng đến nghiên cứu SIP để ứng dụng vào các hệ thống của họ, đặc biệt là hệ thống IP Centrex. Các bản tin SIP sử dụng định dạng text rất gần gũi với HTTP. Định dạng text cho phép dễ dàng mở rộng nội dung của bản tin, dễ theo dõi hoạt động, cũng như tái sử dụng lại các mô hình đã thành công với HTTP (chẳng hạn mô hình servlets, digest authentication). Tuy nhiên định dạng text cũng gây nhiều khó khăn đối với người phát -9triển chưa có nhiều kinh nghiệm, vì sự linh hoạt luôn tỷ lệ nghịch với sự chặt chẽ trong cú pháp. Sự linh hoạt của SIP có được là do tính độc lập của nó. Bản thân SIP chỉ định nghĩa các thủ tục để thiết lập các phiên kết nối giữa các cặp SIP client (end-to-end), trong khi hoạt động của dịch vụ cũng như đặc điểm media là tùy thuộc vào client và dựa trên các chuẩn khác (chẳng hạn RTP/RSVP, SDP, audio codecs). Nói cách khác, SIP là một chuẩn mở. Các chuẩn viễn thông truyền thống thường là rất chi tiết và chặt chẽ, đầy đủ tới tận mức ứng dụng. Điều này hạn chế tính mở, tuy nhiên theo các chuyên gia thì đây lại là một trong những lý do mà H.323 sớm chiếm được ưu thế trong thị trường Internet phone. Trong khi đó SIP được thiết kế để có thể tồn tại lâu dài, dễ dàng thích nghi và tiến hóa. Ví dụ đơn giản như chẳng hạn sau này xuất hiện một giao thức kiểm soát QoS hiệu quả hơn RSVP, việc bổ sung giao thức mới vào ứng dụng sẽ được thực hiện độc lập với SIP. Quan điểm mở của SIP khuyến khích nhà phát triển mạnh dạn chuẩn bị trước các nền tảng cho đầu cuối của họ mà không ngại bị lỗi thời, chẳng hạn như Microsoft đã tích hợp SIP stack vào trong kiến trúc RTC client của hệ điều hành Windows XP, sẵn sàng cho việc phát triển các ứng dụng SIP-based phía người dùng cuối. Hiện nay ở trong nước, khi mà VoIP mới được đưa vào khai thác chưa lâu và đều dựa trên H.323, thì SIP hầu như còn chưa được biết đến. Tuy nhiên trên thế giới thị trường SIP hiện đang đạt mức tăng trưởng khoảng 66% với dự báo sẽ đạt 2,2 tỷ USD trong năm nay (số liệu từ IDC, 2003), trong đó phần lớn là từ các doanh nghiệp sử dụng SIP-enabled IP PBX. Các nghiên cứu ứng dụng và mở rộng SIP cũng đã và đang được tiến hành từ hai năm nay, với mục tiêu khuyến khích ứng dụng giao thức này trong nhiều lĩnh vực. Có thể kể tới SIP-CPL (Call Processing Language) mô tả kịch bản cuộc gọi với các thẻ XML, SIP-CGI định nghĩa giao diện qua đó các thành phần SIP có thể truyền tham số tới ứng dụng, hay các chuẩn ứng dụng SIP phía server như SIP Servlet, JAIN SIP và PARLAY. Mô hình ứng dụng SIP có rất nhiều điểm tương đồng với mô hình ứng dụng NGN, đây cũng là lý do mà nhiều hãng đã trình làng các giải pháp NGN với hầu hết các thành phần dựa trên SIP. Nghiên cứu làm chủ giao thức SIP là cần thiết, khi mà hiện nay xu hướng chuyển dịch mạng viễn thông sang NGN đã xuất hiện và trở thành vấn đề thiết thực đối với định hướng phát triển hạ tầng viễn thông Việt Nam. Mặc dù SIP chưa phải là một giao thức hoàn chỉnh song SIP cũng đã có được những ứng dụng nhất định, ngoài ra các biến thể của SIP cũng đã góp phần đáng kể trong NGN và việc ứng dụng SIP vào xây dựng hệ -10thống IP Centrex là một định hướng cần được nghiên cứu. Với đề tài này, tôi hy vọng sẽ đạt được những mục đích sau:  Nghiên cứu tìm hiểu nội dung và các đặc tính kỹ thuật của giao thức SIP thông qua các RFC và các chuẩn liên quan.  Nghiên cứu mô hình và các thành phần của hệ thống IP Centrex.  Nghiên cứu ứng dụng SIP vào xây dựng hệ thống IP Centrex với một số tính năng cơ bản. 2. Phƣơng pháp nghiên cứu Phần lớn nội dung lý thuyết về SIP sẽ được nghiên cứu từ RFC3261 và các chuẩn liên quan. Ngoài ra tôi sẽ tham khảo các diễn đàn viễn thông quốc tế trên Internet để có các thông tin về các hoạt động nghiên cứu phát triển SIP trên thế giới, cũng như các khuyến nghị và kinh nghiệm của các chuyên gia về VoIP/SIP/NGN. Các nội dung và cấu trúc của hệ thống IP Centrex được tham khảo từ những cấu trúc hệ thống đang được phát triển tại các hãng danh tiếng. Từ đó tôi sẽ tổng hợp và đưa ra một mô hình phù hợp ứng dụng các thành quả nghiên cứu về SIP Về sản phẩm, trước hết tôi sẽ nghiên cứu RFC3261 và các chuẩn liên quan, thử nghiệm một số SIP softphone và SIP server công cộng trên Internet (hoặc open source), sau đó sẽ xây dựng thử một SIP server đơn giản với tính năng hạn chế (đủ để hai đầu cuối gọi được cho nhau). SIP server đơn giản này một mặt sẽ cho phép xác định tính khả thi của đề tài, mặt khác sẽ giúp tôi có được kinh nghiệm thực tế để có thể thiết kế lại SIP server hoàn chỉnh và ứng dụng vào trong mô hình tổng thể của hệ thống IP Centrex 3. Nội dung báo cáo Dựa theo tên đề tài và đề cương đăng ký, tôi xin được chia báo cáo đề tài ra làm hai phần chính. Phần đầu của báo cáo tôi sẽ trình bày những vấn đề cơ bản nhất về giao thức thiết lập phiên SIP, với mục đích giúp cho những người mới bắt đầu có thể hình dung được quá trình phát triển, đặc điểm của giao thức, hoạt động của các thành phần trong giao thức và mối quan hệ giữa chúng (chương 1). Bên cạnh đó, trong phần này tôi cũng xin nêu các vấn đề thực tế nảy sinh trong việc ứng dụng SIP, và các giải pháp do cộng đồng nghiên cứu phát triển SIP đề xuất cùng với kết quả khảo sát một số phần mềm SIP (open-source và free-ware) đã và đang được sử dụng trong thực tế (chương 2). Ngoài ra, theo các góp ý từ các thày hướng dẫn, tôi cũng đã bổ sung các ý kiến liên quan đến việc so sánh SIP với H.323 của một số chuyên gia nổi tiếng trong lĩnh vực VoIP cũng như những nhận xét chủ quan về vấn đề này. -11Phần tiếp theo của báo cáo tôi sẽ trình bày một số vấn đề cơ bản về hệ thống IP Centrex và việc ứng dụng các nghiên cứu về SIP để xây dựng mô hình hệ thống IP Centrex sử dụng call server. Trong chương 3, tôi xin nêu các khái niệm tổng quan về hệ thống IP Centrex và một số nghiên cứu về các cấu trúc và giải pháp IP Centrex trên thế giới. Từ các nghiên cứu đó, tôi sẽ phân tích và lựa chọn một giải pháp để phát triển trong điều kiện thực tiễn của đơn vị và thực tiễn trong nước. Tiếp theo trong chương 4, tôi xin trình bày mô hình thiết kế hệ thống IP Centrex theo giải pháp được chọn và thiết kế chi tiết của một số module chính trong hệ thống. Phần thử nghiệm một số dịch vụ cơ bản của hệ thống được tiến hành tại đơn vị nghiên cứu và được trình bày tại chương 5. Ngoài ra, tại phần cuối cùng của báo cáo, tôi xin nêu ra một số kiến nghị và định hướng phát triển tiếp theo của đề tài nhằm tiếp tục bám sát các nghiên cứu trên thế giới và đưa nội dung của đề tài vào thực tiễn mạng lưới. -12- Chƣơng 1: TỔNG QUAN VỀ GIAO THỨC SIP 1.1. Giới thiệu giao thức 1.1.1. Lịch sử phát triển [4,5,8,9] Từ đầu năm 1996, IETF bắt đầu có các nghiên cứu về SIP. Ban đầu giao thức này có tên là SCIP (Simple Conference Invitation Protocol), sau đó đổi tên thành Session Invitation Protocol. Đến bản draft thứ ba thì giao thức này được đặt tên lại là Session Initiation Protocol và giữ tên này cho đến nay. Phiên bản chuẩn đầu tiên về SIP (1.0) được IETF công bố đầu năm 1999 dưới dạng RFC2543, còn mới nhất là SIP/2.0 RFC3261[8] được công bố giữa năm 2002. Cha đẻ của SIP là Henning Schulzrinne, thuộc Trường ĐH Columbia (www.cs.columbia.edu). H. Schulzrinne là một trong những thành viên đầu tiên của nhóm nghiên cứu IETF MMUSIC, và là tác giả của SCIP. Hiện nay, Schulzrinne vẫn là một thành viên tích cực của IETF có nhiều đóng góp trong việc nghiên cứu phát triển SIP. Một thành viên khác của IETF đáng được nhắc đến là Jonathan Rosenberg (DynamicSoft). Rosenberg bắt đầu tham gia vào nhóm MMUSIC của IETF từ giữa năm 1998, và đã có rất nhiều nghiên cứu giá trị, đặc biệt là đối với sự ra đời của phiên bản SIP/2.0. Một trong những nguồn tài liệu chính của đề tài này là thư viện của Rosenberg trên Internet (tại địa chỉ www.jdrosen.net/papers). Sau khi IETF công bố phiên bản SIP/2.0, các nghiên cứu ứng dụng SIP trở nên sôi động hơn với sự nhập cuộc của các đại gia như Microsoft, Cisco. Tuy nhiên cho đến nay, các nỗ lực ứng dụng SIP vẫn còn nhiều vấn đề cần tháo gỡ, đặc biệt là ảnh hưởng của NAT và Firewall đối với các gói tin RTP. Ngoài ra nội dung trong các chuẩn vẫn còn chưa chính xác và đang được hoàn thiện, chẳng hạn đã tìm được gần 70 lỗi của RFC3261, trong đó mới giải quyết được 2 lỗi. Về các hoạt động nghiên cứu ứng dụng SIP, có thể tham khảo tại các địa chỉ sau:  SIP Forum (www.sipforum.org): Là một diễn đàn phi lợi nhuận với mục tiêu thúc đẩy ứng dụng SIP trong lĩnh vực truyền thông multimedia/realtime qua Internet và các thiết bị không dây NGN. SIP Forum được điều hành bởi DynamicSoft (công ty của Rosenberg), hiện có 32 thành viên là các hãng lớn như Alcatel, Avaya, AT&T, Siemens... -13 SIP Center (www.sipcenter.com): Website này cung cấp nhiều tài nguyên cho việc phát triển SIP như các softphone, các kịch bản test... Đây cũng là khu trưng bày trực tuyến các sản phẩm SIP với các tên tuổi hàng đầu trong lĩnh vực truyền thông.  VoIP Forum (www.voip-forum.com): Đăng các tin tức về VoIP nói chung và SIP nói riêng. Một số website khác có thể tìm thấy các tài nguyên hỗ trợ phát triển SIP như vovida.org (nhiều open source), www.cs.columbia.edu (các SIP server công cộng)... Trong đó đáng chú ý nhất là IETF Mailing-list lưu trữ các thảo luận giữa các thành viên trong các nhóm nghiên cứu của IETF (www1.ietf.org/mail-archive/working-groups), ngoài ra trên site này dễ dàng tìm thấy các RFC và các bản draft liên quan đến SIP: [14,15]  www1.ietf.org/html.charters/sip-charter.html  www1.ietf.org/html.charters/sipping-charter.html 1.1.2. SIP và H323 [11,12,14,15] Trong lĩnh vực VoIP hiện nay phổ biến nhất là hai họ giao thức SIP và H.323. H.323 là chuẩn được ITU-T đề xuất và được đưa vào ứng dụng trước. Trong khi đó SIP là chuẩn được xây dựng sau (1996) bởi IETF, các ứng dụng của SIP mới bắt đầu xuất hiện gần đây nhưng đã nhanh chóng thu hút được sự quan tâm của nhiều nhà phát triển. Trên các diễn đàn VoIP quốc tế cũng đã có nhiều bài viết so sánh hai họ giao thức này, cũng như các tranh cãi giữa hai phe ủng hộ đối với từng giao thức. Hầu hết các bài so sánh đều cho thấy ưu điểm của SIP so với H.323. H.323 là trường hợp điển hình của một giao thức phức tạp, xác định (deterministic) và đi theo bộ. Mô tả về H.323 phân tán trên sáu tài liệu chính, định nghĩa tất cả các component của một mạng voice/video/data: đầu cuối, gateway, gatekeeper, MCUs và các feature server. Ngoài ra còn có một số giao thức liên quan như Q.931 (báo hiệu), RAS (giao tiếp đầu cuối và gatekeeper) và H.245 (media codec). Để thực hiện một cuộc gọi thoại đơn giản, tất cả các giao thức này đều phải góp mặt với hàng tá bản tin báo hiệu được gửi qua lại, trong khi SIP chỉ cần 4 bản tin. Lợi thế của H.323 so với SIP chính là sự ra đời sớm hơn. Có rất nhiều thư viện cho H.323 stack đã được kiểm thử, và có thể yên tâm mua lại các thư viện này để phát triển dịch vụ. Tuy nhiên sự phức tạp của giao thức khiến cho H.323 rất khó khăn trong việc thích ứng với thực tế hiện nay, khi mà sự phát triển của IP network đã vượt ra khỏi những tiên liệu ban đầu của những người thiết kế H.323. -14Các thử nghiệm của Creative Labs trên H.323 cho thấy khả năng thiết lập cuộc gọi thành công trong các tình huống mất/lỗi gói tin là khá tệ, trong khi đó thực nghiệm cho thấy SIP chỉ gặp vấn đề đối với các tình huống trễ gói tin. Các chuyên gia cho rằng nguyên nhân chính là thủ tục báo hiệu kiểu ISDN (Q.931) của H.323 không phù hợp với IP network. Trong khi đó ý tưởng thiết kế của SIP là rất đơn giản. Ban đầu SIP dự định sẽ được sử dụng như một cơ chế để kết nối các đầu cuối vào hội đàm multi-point, cho phép mọi người trong cuộc hội đàm có thể trao đổi ý kiến dưới dạng text đơn thuần. Nhưng tác giả của SIP, Henning Schulzrinne, nhanh chóng nhận ra rằng SIP rất phù hợp với IP Telephony. Tuy nhiên tôn chỉ của SIP vẫn là duy trì tối đa tính độc lập của giao thức đối với phần media, vì thế sử dụng SIP để thiết lập một cuộc thoại hay một trò chơi multiplayer cũng không có gì khác nhau. Sử dụng định dạng text cho các bản tin SIP cũng là một quyết định tinh tế. H.323 sử dụng các bản tin đóng gói theo kiểu packet nhị phân có nhiều ưu điểm dễ thấy như chiếm băng thông ít hơn (tính trên cùng một đơn vị dữ liệu), phân tích bằng chương trình đơn giản hơn. Tuy nhiên, khi thực hành với H.323 có thể nhận thấy những người thiết kế giao thức này đã quá lạm dụng khả năng phân cấp của quy tắc đóng gói BER (Basic Encoding Ruler), khiến cho việc truy xuất vào các trường của bản tin rất phiền phức. Trong khi đó lợi thế của định dạng text là dễ đọc → dễ debug, ngoài ra tính linh hoạt và khả năng mở rộng của định dạng text là không hạn chế. Nhược điểm chiếm nhiều băng thông của định dạng text bị xóa nhòa khi mà trên thực tế các bản tin SIP chỉ có độ dài khoảng vài trăm byte. Tuy nhiên việc phân tích các thành phần của bản tin SIP đòi hỏi chương trình cần phải có các thuật toán thông minh hơn so với việc phân tích một cách máy móc gói tin BER mà H.323 sử dụng. Henning Schulzrinne đã có ý đồ tận dụng lại các thuật toán text-parsing khi sử dụng cú pháp của HTTP 1.1 cho các bản tin SIP. Trong một số trường hợp SIP server được nhúng dưới dạng module vào một web server (chẳng hạn Apache) để thừa kế phần phân tích bản tin theo cú pháp HTTP 1.1. Các chuyên gia cũng lưu ý khi áp dụng các module HTTP vào SIP cần đảm bảo có sự hỗ trợ bảng mã UTF-8, và phải tách được lớp vận chuyển (vì HTTP chỉ sử dụng lớp vận chuyển là TCP). Các chuyên gia đều nhất trí rằng ưu điểm vượt trội của SIP so với H.323 chính là kiến trúc tích hợp theo hàng ngang, cho phép các giao thức liên quan trong một ứng dụng có thể "lắp ghép với nhau như trò chơi Lego" (trích lời Schulzrinne). Trong khi đó H.323 có rất nhiều ràng buộc cần tuân thủ, nó mô tả mọi thứ từ media codec cho tới lớp vận chuyển. Còn Rosenberg phát biểu: "Về cơ bản, sự thành công của Internet là tách được -15các phần dọc (vertical) của ứng dụng thành các module ngang (horizontal), chẳng hạn như tách được lớp vận chuyển ra khỏi dịch vụ". Tham khảo:  http://www.cconvergence.com/article/CTM20000515S0003/  http://www.fokus.gmd.de/research/cc/glone/projects/ipt/sip.html  http://www.nuera.com/news/iptelephony_072000.cfm  http://www.networkcomputing.com/netdesign/1109voipfull.html SIP cũng không phải là không có nhược điểm. Lớp vận chuyển của SIP đuợc dùng chủ yếu là UDP cho phép giảm thiểu tài nguyên và hỗ trợ vượt NAT, song UDP thiếu các chức năng về tính toàn vẹn của bản tin (như checksum, CRC). Điều này đòi hỏi thuật toán phân tích bản tin SIP phải được thiết kế cẩn thận, nếu không chỉ cần một hay một vài bit bị thay đổi ngẫu nhiên trên đường truyền cũng có thể làm sập SIP stack hoặc cập nhật rác vào CSDL. Đáng tiếc là những người thiết kế giao thức này quá “chung thủy” với định dạng thuần text của HTTP (trong khi HTTP được thiết kế trên TCP). Nếu như SIP được thiết kế để bổ sung khả năng kiểm tra tính toàn vẹn của bản tin (điều này không khó), thì sự kết hợp của SIP trên nền UDP sẽ là trọn vẹn. 1.1.3. Vai trò của SIP trong mạng viễn thông Có nhiều tiêu chí để đánh giá tầm quan trọng của một giao thức báo hiệu trong viễn thông. Tuy nhiên một giao thức tốt phải là một giao thức hỗ trợ tốt các chức năng báo hiệu, có khả năng thích ứng linh hoạt với sự thay đổi của lớp dịch vụ điều khiển cuộc gọi bên trên và phù hợp với xu hướng phát triển của mạng lưới trong tương lai. Về khả năng hỗ trợ báo hiệu:  Như đã phân tích ở trên, SIP là một giao thức được phát triển phục vụ cho thoại trên IP tương tự như H.323. SIP đáp ứng đầy đủ các chức năng thiết lập phiên của một giao thức báo hiệu điều khiển cuộc gọi (đã được phân tích rất rõ trong RFC 3261).[8]  Ngoài khả năng hỗ trợ VoIP, SIP cũng rất phù hợp với các ứng dụng truyền thông đa phương tiện, đặc biệt là với tin nhắn nhanh vì tính đơn giản của SIP. Hiện tại chương trình Messenger của Microsoft đã sử dụng giao thức này. Về khả năng thích ứng:  SIP có khả năng hỗ trợ các ứng dụng điều khiển cuộc gọi một cách linh hoạt, điều đó có được là do tính độc lập của nó. Bản thân SIP chỉ định nghĩa các thủ tục để thiết lập các phiên kết nối giữa các cặp SIP client (end-to-end), trong khi hoạt động của -16dịch vụ cũng như đặc điểm media là tùy thuộc vào client và dựa trên các chuẩn khác (chẳng hạn RTP/RSVP, SDP, audio codecs).  Các chuẩn viễn thông truyền thống thường là rất chi tiết và chặt chẽ, đầy đủ tới tận mức ứng dụng (Mô hình top-down). Điều này hạn chế tính mở, tuy nhiên theo các chuyên gia thì đây lại là một trong những lý do mà H.323 sớm chiếm được ưu thế trong thị trường Internet phone. Trong khi đó SIP được thiết kế để có thể tồn tại lâu dài, dễ dàng thích nghi và tiến hóa (Mô hình bottom-up). Ví dụ đơn giản như chẳng hạn sau này xuất hiện một giao thức kiểm soát QoS hiệu quả hơn RSVP, việc bổ sung giao thức mới vào ứng dụng sẽ được thực hiện độc lập với SIP. Quan điểm mở của SIP khuyến khích nhà phát triển mạnh dạn chuẩn bị trước các nền tảng cho đầu cuối của họ mà không ngại bị lỗi thời, chẳng hạn như Microsoft đã tích hợp SIP stack vào trong kiến trúc RTC client của hệ điều hành Windows XP, sẵn sàng cho việc phát triển các ứng dụng SIP-based phía người dùng cuối. Về khả năng phát triển trong tương lai: [4,11,12,14,15]  Như đã phân tích, dù đều là các giao thức được thiết kế ban đầu để phục vụ cho VoiP, nhưng khác với H.323. Mô hình phát triển ứng dụng trên SIP có rất nhiều điểm tương đồng với mô hình ứng dụng trong NGN. Trong NGN, các dịch vụ rất đa dạng và thường hội tụ dưới dạng ứng dụng multimedia nên rất linh hoạt, ví dụ có thể là ứng dụng thuần thoại như VoiP, hoặc thuần text như SMS hay Instance Message nhưng cũng có thể lại là ứng dụng đa phương tiện như Video Conference…. Yêu cầu của NGN chỉ có thể đáp ứng được khi giao thức lớp báo hiệu có đủ độ linh hoạt. H.323 không thể đáp ứng điều đó, vì nó là một chuẩn đóng. Ngược lại, SIP lại rất dễ thích nghi, đặc biệt là trong trường hợp phối hợp với các giao thức khác. Ví dụ, bằng việc bổ sung các bản tin mới (MESSAGE, NOTIFY, INFO) hay sử dụng kết hợp với một giao thức khác (như giao thức mô tả phiên SDP, RFC 2327), SIP có khả năng hỗ trợ nhiều loại ứng dụng khác nhau, tuỳ theo nhu cầu phát triển dịch vụ. Từ những phân tích trên có thể thấy SIP sẽ đóng một vai trò quan trọng đặc biệt khi mạng lõi NGN chuyển sang hoạt động hoàn toàn trên IP (NGN IMS-Based). Các ứng dụng của SIP khi đó sẽ rất phong phú. -17- Hình 1. Vị trí của SIP trong mô hình NGN Hình trên có thể thấy trong NGN, SIP chiếm một vai trò rất quan trọng. Thực thể đầu não trong NGN, Softswitch, hỗ trợ cả SIP và H.323. Tuy nhiên, như đã phân tích ở trên, H.323 chỉ là giải pháp tạm thời trong giai đoạn đầu. Trong các pha kế tiếp, SIP hầu như thay thế H.323 trong vai trò giao thức báo hiệu. Có hai mô hình quan trọng phát triển dịch vụ trên SIP như trên hình vẽ:  Mô hình Service-node: Với mô hình này, các ứng dụng (application server) sẽ giao tiếp trực tiếp với các thực thể điều khiển cuộc gọi (call agent) như Softswitch, SIP Server… bằng giao thức SIP và thực hiện điều khiển các thành phần cung cấp tài nguyên dịch vụ (Media Server, Resource Server…) bằng việc kết hợp với một số giao thức khác.  Mô hình dựa trên OSA: Trong mô hình này, SIP được sử dụng giữa Call Agent và khối OSA để cung cấp giao diện chuẩn mở (Parlay API, JAIN…). Các ứng dụng sẽ điều khiển logic cuộc gọi thông qua việc gọi các hàm chuẩn mà OSA cung cấp. Mỗi mô hình đều có các đặc điểm riêng, tuy nhiên đều cho thấy SIP đóng một vai trò quan trọng trong kiến trúc phát triển dịch vụ của NGN. Các ứng dụng rất phong phú, có thể kể đến như Messaging, VoiceMail, Video Conference,… và đặc biệt là IP Centrex. -181.2. Đặc điểm kỹ thuật của giao thức SIP 1.2.1. Các đặc điểm kỹ thuật chính [8,18,19,20,22] 1.2.1.1. Chức năng và các thành phần SIP được thiết kế để tạo ra các phiên (session) media giữa các đầu cuối, qua đó các đầu cuối có thể trao đổi các loại hình thông tin khác nhau như âm thanh, hình ảnh, văn bản... SIP cung cấp các chức năng cho phép các đầu cuối (SIP client) thỏa thuận các đặc điểm của phiên kết nối đang được thiết lập giữa chúng (như giao thức truyền media, địa chỉ...), sửa đổi các tham số phiên trong quá trình trao đổi, và kết thúc phiên. Cũng giống như các giao thức VoIP khác, SIP được thiết kế để địa chỉ hóa chức năng của báo hiệu và quản lý phiên truyền thông trong một mạng thoại gói. Các báo hiệu cho phép các thông tin về cuộc gọi có thể được chuyển tới đầu cuối kia. Chức năng quản lý báo hiệu tạo ra khả năng điều khiển thuộc tính cuộc đầu cuối đến đầu cuối. SIP cung cấp các khả năng sau:  Phát hiện vị trí đầu cuối đích – SIP cung cấp địa chỉ phân tích, ánh xạ tên và chuyển hướng cuộc gọi.  Phát hiện khả năng truyền thông của đầu cuối đích – Thông qua một giao thức mô tả (thường là SDP), SIP quyết định mức thấp nhất của dịch vụ chung giữa các đầu cuối. Phiên truyền thông được thiết lập chỉ dựa trên khả năng truyền thông sẵn có của các đầu cuối..  Xác định khả năng sẵn sàng của đầu cuối đích – Một cuộc gọi sẽ không hoàn thành, không thực hiện được vì lý do đầu cuối đích không sẵn sàng cho việc truyền thông. SIP quyết định xem liệu cuộc gọi được nối đến có thành công hay không hay không có trả lời sau khi chuyển một loạt các bản tin. Sau đó SIP sẽ gửi bản tin thông báo lý do của việc đầu cuối đích không sẵn sàng.  Thiết lập phiên truyền thông giữa đầu cuối bắt đầu và đầu cuối đích – Nếu một cuộc gọi có thể hoàn thành thì SIP sẽ khởi tạo một phiên truyền thông giữa các đầu cuối. SIP cũng cung cấp chức năng thay đổi cuộc gọi giữa chừng như thêm một đầu cuối vào trong một cuộc gọi hội nghị hay thay đổi thuộc tính truyền dẫn hoặc codec.  Điều khiển việc chuyển tiếp và kết thúc cuộc gọi – SIP cung cấp chức năng chuyển tiếp cuộc gọi từ đầu cuối này đến đầu cuối khác. Trong quá trình chuyển tiếp SIP thiết lập một phiên truyền thông đơn giản giữa chuyển tiếp và đầu cuối mới (được -19xác định bởi các bên chuyển tiếp) và kết thúc phiên truyền thông giữa người chuyển tiếp và cuộc gọi chuyển tiếp. Để các client có thể tìm được nhau, và hỗ trợ một số chức năng khác, các SIP server được sử dụng với vị trí tương tự như gatekeeper trong H.323. Các loại SIP server gồm có:  SIP Proxy server (SPS): Là một chương trình có nhiệm vụ trung chuyển các bản tin SIP giữa các client. SPS phiên dịch các bản tin SIP nhận được, sửa đổi (nếu cần) và chuyển tiếp tới địa chỉ phù hợp. Để hỗ trợ SPS trong việc quản lý các client, một chương trình hỗ trợ gọi là Location service được sử dụng (còn gọi là Location server, Location database).  SIP Registrar server: Làm nhiệm vụ xử lý bản tin REGISTER từ các client và cập nhật vào Location service. Thủ tục đăng ký này (login) cho phép SIP Proxy server có được thông tin về vị trí và tham số của các client. Thông thường Proxy server tích hợp chức năng của Registrar.  SIP Redirect server: Được thiết kế phục vụ cho các đầu cuối di chuyển giữa các SIP domain. Redirect server phân tích bản tin INVITE và trả về các địa chỉ tương ứng (không chuyển tiếp bản tin). Một SIP server tích hợp có thể hoạt động ở chế độ proxy, hoặc redirect, hoặc linh động. Ghi chú: Để có thể kết nối với các mạng khác (non-SIP), các SIP gateway được sử dụng. Trong giao thức SIP, các gateway có vị trí tương tự như các SIP client (đều gọi là SIP end-point), nên khi nói SIP client đã bao hàm cả SIP gateway. Các đặc điểm của SIP đã được mô tả chi tiết trong RFC3261 và cũng đã có nhiều bài báo phân tích với các nội dung tổng thể đáng lưu ý như sau:  Bản thân SIP không định nghĩa toàn bộ các thủ tục cần thiết để xây dựng một hệ thống tích hợp, mà được thiết kế dưới dạng component cho phép kết hợp với một số chuẩn khác để tạo thành một kiến trúc hoàn chỉnh. Thông thường SIP được dùng kết hợp với SDP (RFC2327) để mô tả phiên, sử dụng RTP (RFC1889) để truyền dữ liệu real-time và điều khiển QoS, và RTSP (RFC2326) để truyền các dữ liệu dạng stream. Tuy nhiên hoạt động của SIP là độc lập với các giao thức đó.  SIP không cung cấp một dịch vụ nào cụ thể, mà cung cấp các thủ tục căn bản (primitive) để xây dựng các dịch vụ khác nhau. Đặc điểm dịch vụ được thỏa thuận giữa các đầu cuối SIP, thường là dưới dạng SDP. Các dịch vụ đơn giản hay đặc thù có thể được lập trình tại phía người dùng cuối, trong khi các dịch vụ mang tính cộng đồng có thể được thực hiện tại SIP Application Server của nhà cung cấp dịch vụ.  Các đầu cuối SIP được đánh địa chỉ theo kiểu email (username@domain). Sơ đồ địa chỉ dạng E.164 cũng được hỗ trợ (tùy theo chính sách của location service).
- Xem thêm -

Tài liệu liên quan