You are on page 1of 119

Đồ án tốt nghiệp đại học vụ

Khảo sát các phương pháp phối hợp dịch

MỤC LỤC
1 CHƯƠNG I : MỞ ĐẦU.......................................................................................13 1.1 Tầm quan trọng của đề tài..............................................................................13 1.2 Nội dung nghiên cứu......................................................................................14 2 CHƯƠNG II : CÁC NGUYÊN LÝ CHUNG TRONG KIẾN TRÚC IMS...........16 2.1 Các yêu cầu đối với IMS................................................................................16 2.1.1 Phiên đa phương tiện IP..........................................................................16 2.1.2 Chất lượng dịch vụ QoS..........................................................................16 2.1.3 Internetworking.......................................................................................17 2.1.4 Chuyển vùng (Roaming).........................................................................17 2.1.5 Điều khiển dịch vụ..................................................................................17 2.1.6 Phát triển dịch vụ.....................................................................................18 2.1.7 Đa truy nhập............................................................................................18 2.2 Tổng quan về các giao thức sử dụng trong IMS.............................................19 2.2.1 Giao thức điều khiển phiên......................................................................19 2.2.2 Giao thức AAA.......................................................................................20 2.2.3 Các giao thức khác..................................................................................20 2.3 Kiến trúc tổng quát IMS.................................................................................21 2.3.1 Mạng truy nhập.......................................................................................22 2.3.2 Mạng lõi..................................................................................................23 2.3.3 Tầng dịch vụ............................................................................................32 2.4 Định danh trong IMS.....................................................................................33 2.4.1 Định danh người dùng công cộng............................................................33 2.4.2 Định danh người dùng riêng....................................................................35 2.4.3 Mối quan hệ giữa định danh công cộng và định danh riêng....................35 2.4.4 Định danh dịch vụ công cộng..................................................................37 2.5 SIM, USIM và ISIM trong 3GPP...................................................................38 2.5.1 SIM.........................................................................................................39 2.5.2 USIM.......................................................................................................39 2.5.3 ISIM........................................................................................................39 3 CHƯƠNG III : ĐIỀU KHIỂN PHIÊN TRONG IMS...........................................40 3.1 Chức năng của SIP.........................................................................................40 3.1.1 Mô tả phiên và SDP................................................................................40 3.1.2 Mô hình Offer/Answer............................................................................41 3.1.3 SIP và SIPS URIs....................................................................................42 3.1.4 Định vị người dùng.................................................................................43 3.2 Cơ bản về SIP................................................................................................44 3.2.1 SIP là gì...................................................................................................44 3.2.2 SIP liên hệ với HTTP như thế nào...........................................................46 3.2.3 Bản tin SIP..............................................................................................48 3.2.4 Phiên giao dịch (Transaction)..................................................................49 3.2.5 Hội thoại (dialog)....................................................................................50 3.2.6 Trường điều khiển Record-Route, Route và Contact...............................52 4 CHƯƠNG IV : QUẢN LÝ TƯƠNG TÁC DỊCH VỤ TRONG IMS...................54 Nguyễn Quang Dũng – Điện Tử 4 – K50 Trang 1

Đồ án tốt nghiệp đại học vụ

Khảo sát các phương pháp phối hợp dịch

4.1 Service Broker – khối quản lý tương tác dịch vụ trong IMS..........................55 4.1.1 SCSCF và tiêu chuẩn lọc ........................................................................56 4.1.2 Service Capabilitiy Interaction Manager (SCIM)....................................68 4.2 Distributed Feature Composition – architecture routing algorithm (DFC-AR): ............................................................................................................................. 73 4.2.1 Giới thiệu về hỗn hợp ứng dụng và kiến trúc DFC:.................................73 4.2.2 Mục tiêu thiết kế:.....................................................................................76 4.2.3 Hoạt động của DFC Application Router..................................................77 4.2.4 DFC-AR API:..........................................................................................82 4.2.5 Các ví dụ:................................................................................................85 5 CHƯƠNG V : CÁC PHƯƠNG PHÁP PHỐI HỢP DỊCH VỤ TRONG MIỀN WEB........................................................................................................................88 5.1 Khái niệm Web Service và Service Oriented Architecture.............................88 5.1.1 Service Oriented Architecture.................................................................88 5.1.2 Web Service............................................................................................93 5.1.3 Web Service Description Language – WSDL.........................................98 5.2 Web Service Orchestration...........................................................................100 5.2.1 Giới thiệu:.............................................................................................100 5.2.2 Orchestration và Choreography.............................................................100 5.2.3 Các ngôn ngữ dùng trong orchestration:................................................102 5.3 Business Process Execution Language for Webservices..............................108 5.3.1 Giới thiệu..............................................................................................108 5.3.2 Cấu trúc của một qui trình nghiệp vụ...................................................109 5.3.3 Cách xây dụng một qui trình BPEL.......................................................109 5.3.4 Các đặc tính và yếu tố của một qui trình BPEL.....................................109 6 CHƯƠNG VI : SO SÁNH PHỐI HỢP DỊCH VỤ TRONG MIỀN WEB VÀ VIỄN THÔNG.......................................................................................................113 6.1 So sánh hai miền: viễn thông và web:..........................................................113 6.1.1 Khách hàng – nhà cung cấp so với đối tác ngang hàng:........................113 6.1.2 Kích hoạt rõ ràng và không rõ ràng:......................................................114 6.1.3 Các chức năng phân tán và các chức năng chồng chéo.........................114 6.1.4 Các yêu cầu về dịch vụ..........................................................................114 6.1.5 Những khác biệt về giao thức...............................................................115 6.1.6 Mô hình tương tác.................................................................................115 6.1.7 Cấu trúc của bộ phối hợp.......................................................................116 6.1.8 Phương pháp phối hợp dựa trên yêu cầu-phản hồi và dựa trên phiên kết nối 117 6.1.9 Khác biệt về quan hệ trạng thái ............................................................117 6.1.10 Khác biệt nhưng có thể hòa hợp..........................................................118

Nguyễn Quang Dũng – Điện Tử 4 – K50

Trang 2

DANH SÁCH HÌNH VẼ
Hình 2-1 : Tổng quan kiến trúc IMS........................................................................22 Hình 2-2 : Giao tiếp giữa PSTN/CS gateway và mạng CS......................................28 Hình 2-3 : P-CSCF đặt tại mạng khách....................................................................31 Hình 2-4: P-CSCF đặt tại mạng chủ .......................................................................31 Hình 2-5 : Quan hệ giữa định danh người dùng riêng và định danh người dùng công cộng theo 3GPP R5..................................................................................................36 Hình 2-6 : Quan hệ giữa định danh người dùng riêng và định danh người dùng công cộng theo 3GPP R6..................................................................................................37 Hình 3-7 : Một ví dụ về mô tả phiên SDP...............................................................40 Hình 3-8 : Các kiểu trong SDP................................................................................41 Hình 3-9 : Mô tả phiên SDP của Bob......................................................................42 Hình 3-10 : Alice đăng ký vị trí người dùng với tên miền domain.com registrar....44 Hình 3-11 : Các bước thiết lập một cuộc gọi...........................................................46 Hình 3-12: Cấu trúc bản tin SIP...............................................................................48 Hình 3-13: Transaction............................................................................................50 Hình 3-14 : Luồng cuộc gọi trong một hội thoại SIP...............................................51 Hình 3-15 : Cách sử dụng Record-Route, Route và Contact....................................53 Hình 4-16: Cấu trúc của User Profile......................................................................58 Hình 4-17: Cấu trúc tiêu chuẩn lọc khởi tạo............................................................59 Hình 4-18: Thành phần của Service Point Trigger..................................................62 Hình 4-19: Ví dụ về User Profile.............................................................................64 Hình 4-20: SCSCF đóng vai trò Service Broker giữa các AS khác nhau.................65 Hình 4-21: Định tuyến bản tin đến máy chủ ứng dụng............................................68 Hình 4-22: SCIM trong cấu trúc IMS......................................................................69 Hình 4-23: Giao diện của SCIM với các thực thể mạng..........................................69 Hình 4-24: SCIM được triển khai theo dạng (1)......................................................71 Hình 4-25 : SCIM được triển khai theo dạng (2).....................................................72 Hình 4-26: Hỗn hợp ứng dụng trong các container..................................................74 Hình 4-27: Minh họa ví dụ 1...................................................................................86 Hình 4-28: Minh họa ví dụ 2...................................................................................87 Hình 5-29: Các tác nhân trong SOA .......................................................................90 Hình 5-30: Tập giao thức trong Web service ..........................................................94 Hình 5-31: Các tác nhân của Web service ..............................................................95 Hình 5-32: Thông điệp SOAP.................................................................................96 Hình 5-33: Cấu trúc bản tin SOAP..........................................................................97 Hình 5-34: Tổng quan về WSDL.............................................................................99 Hình 5-35: Phối hợp dịch vụ web với phương pháp Orchestration........................101 Hình 5-36: Phối hợp dịch vụ web với phương pháp Choreography......................102 Hình 5-37: Ví dụ về WSCL...................................................................................103 Hình 5-38: Tập hợp các mô hình trong BPMN......................................................105 Hình 5-39: Web Services Choreography Interface (WSCI)...................................106 Hình 5-40: Ví dụ đơn giản về WSCI.....................................................................106 Hình 5-41: Ví dụ đơn giản về BPML.....................................................................107

...............Đồ án tốt nghiệp đại học vụ Khảo sát các phương pháp phối hợp dịch Hình 5-42: Các đặc tính và yếu tố của một qui trình BPEL.............110 Nguyễn Quang Dũng – Điện Tử 4 – K50 Trang 5 ........

Đồ án tốt nghiệp đại học vụ Khảo sát các phương pháp phối hợp dịch DANH SÁCH CÁC TỪ VIẾT TẮT STT 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 Từ viết tắt 3GPP 3GPP2 3WC ACK ADSL AR AS ATM B2BUA BGCF BICC BPML BPMN CF COPS CSCF CW DFC DFC-AR DHCP DNS ENUM GGSN GPRS GSM HLR Tên đầy đủ Third Generation Partnership Project Third Generation Partnership Project 2 3-way Call Acknowledgment Asymmetric Digital Subscriber Line Application Router Application Server Asynchoronous Transfer Mode Back-to-back User Agent Breakout Gateway Control Function Bearer Independent Call Control Business Process Management Language Business Process Modeling Notation Call Forwarding Common Open Policy Service Call Session Control Function Call Waiting Distributed Feature Composition Distributed Feature Composition – architecture routing algorithm Dynamic Host Configuration Protocol Domain Name System Telephone Number Mapping Gateway GPRS Support Node General Packet Radio Service Global System for Mobile Communications Home Location Register Trang 6 BPEL4WS Business Process Execution Language for Web Services Nguyễn Quang Dũng – Điện Tử 4 – K50 .

Đồ án tốt nghiệp đại học vụ 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 HSS HTTP I-CSCF IETF IFC IMS IMSI IM-SSF IP IP-CAN ISC ISIM ISUP ITU-T MAP MGCF MGW MIME MRF MRFC MRFP MSISDN NAI OCS OSA-SCS PA P-CSCF PDF PEP Khảo sát các phương pháp phối hợp dịch Home Subscriber Server Hypertext Transfer Protocol Interrogating-CSCF Internet Engineering Task Force Initial Filter Criteria IP Multimedia Subsystem International Mobile Subscriber Identifier IP Multimedia Service Switching Function Internet Protocol IP Connectivity Access Network IMS Service Control IP multimedia Services Identity Module ISDN User Part International Telecommunication UnionTelecommunications Mobile Application Part Media Gateway Control Function Media Gateway Multipurpose Internet Mail Extensions Media Resource Function Media Resource Function Controllers Media Resource Function Processors Mobile Subscriber ISDN Number Network Access Identifier Outbound Call Screening Open Service Access–Service Capability Server Presence Agent Proxy-CSCF Policy Decision Function Policy Enforcement Point Trang 7 MEGACO Media Gateway Control Nguyễn Quang Dũng – Điện Tử 4 – K50 .

Đồ án tốt nghiệp đại học vụ 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 88 PIDF PS PSI PSTN PUA QoS RTCP RTP SCIM S-CSCF SCTP SDP SFC SGSN SGW SIM SIP SLF SOAP SPT SS7 TCP THIG UA UAC UAS UDA UDP UDR UE Khảo sát các phương pháp phối hợp dịch Presence Information Data Format Presence Agent Public Service Identity Public Switched Telephone Network Presence User Agent Quality of Service RTP Control Protocol Real-Time Transport Protocol Service Capabilitiy Interaction Manager Serving-CSCF Stream Control Transmission Protocol Session Description Protocol Subsequent Filter Criteria Serving GPRS Support Node Signalling Gateway Subscriber Indetity Module Session Initiation Protocol Subscriber Location Function Simple Object Access Protocol Service Point Trigger Sinaling System No. 7 Transmission Control Protocol Topology Hiding Inter-network Gateway User Agent User Agent Client User Agent Server User Data Answer User Datagram Protocol User Data Request User Equipment Trang 8 Nguyễn Quang Dũng – Điện Tử 4 – K50 .

Đồ án tốt nghiệp đại học vụ 89 90 91 92 93 94 95 96 97 98 99 100 101 102 UICC UMTS URI URL USIM VoD VoIP WAP WLAN WLSS WSCI WSDL WSFL XML Khảo sát các phương pháp phối hợp dịch Universal Integrated Circuit Card Universal Mobile Telecommunication System Uniform Resource Identifier Uniform Resource Locator Universal Subscriber Identity Module Video on Demand Voice over IP Wireless Application Protocol Wireless Local Access Network WebLogic SIP Server Web Services Choreography Interface Web Service Description Language Web Services Flow Language Extensible Markup Language Nguyễn Quang Dũng – Điện Tử 4 – K50 Trang 9 .

được sự gợi ý của tiến sĩ Nguyễn Tài Hưng em đã lựa chọn đề tài “Khảo sát các phương pháp phối hợp và tương tác dịch vụ trong các mạng thế hệ mới”. Em xin chân thành cám ơn TS. yêu cầu cần có một tiêu chuẩn chung cho việc phối hợp dịch vụ trong IMS và các dịch vụ web đang rất cấp bách. Trong thời gian thực tập tại phòng lab C9-411 của bộ môn kỹ thuật thông tin để tìm hiểu về kiến trúc IMS và triển khai các dịch vụ mới trên IMS. mạng di động và mạng PSTN đang là xu hướng được quan tâm hàng đầu trong lĩnh vực thông tin liên lạc. Tôi cũng xin chân thành cám ơn gia đình và bạn bè đã động viên và chia sẽ những kinh nghiệm quý báu. hiện nay có một số hướng nghiên cứu tiếp cận vấn đề này. IMS đã thực sự trở thành chìa khóa để hợp nhất mạng di động và mạng Internet. Trong thời điểm hiện tại. Với IMS người dùng có thể liên lạc khắp mọi nơi nhờ tính di động của mạng di động và đồng thời có thể sử dụng những dịch vụ hấp dẫn từ mạng Internet. Nguyễn Tài Hưng và TS. Phân hệ IP Multimedia Subsystem (IMS) là một trong những kiến trúc đã ra đời trong xu thế phát triển đó. Nguyễn Hữu Thanh đã giúp đỡ tận tình cho em trong thời gian làm đồ án vừa qua. IMS đồng thời cũng trở thành một phân hệ trong mô hình mạng thế hệ mới (NGN) của tất cả các hang sản xuất các thiết bị viễn thông và các tổ chức chuẩn hóa trên thế giới. Vì vậy. Nhiều kiến trúc mới đã ra đời trong quá trình phát triển hợp nhất các mạng với mục đích tạo ra một mạng toàn IP duy nhất. ngày tháng 05 năm 2010 Sinh viên Nguyễn Quang Dũng Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 10 . Em xin chân thành cám ơn Hà Nội.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ LỜI NÓI ĐẦU Trong những năm qua xu hướng hội tụ mạng Internet.

I expect to provide readers general knowledge of IP multimedia system and present approaches to feature interaction and service composition in IMS and Web service domain. Trong đề tài này. The ability of rapid value-added service providing bring more competitive to this infrastructure. Khả năng cung cấp các dịch vụ giá trị gia tăng một cách nhanh chóng và linh hoạt nhất đã đem lại cho IMS một ưu thế rất lớn trong cạnh tranh. Song song với sự phát triển của IMS là sự đòi hỏi cần có một tiêu chuẩn cho kĩ thuật phối hợp dịch vụ trong miền IMS. các nhà cung cấp dịch vụ đã không ngừng nghỉ trong việc sáng tạo ra các kiến trúc mạng mới. Với mong muốn kết hợp các dịch vụ internet với các dịch vụ di động truyền thống để đáp ứng ngày càng tốt hơn nhu cầu của khách hàng. như trong miền Web. IMS architecture is an important step in process of trying to improve quality of services.TÓM TẮT ĐỒ ÁN Trong những năm gần đây. the Internet has experienced dramatic growth over recent years. IMS ra đời là quả của quá trình đó. On providing integrated services between the Internet and traditional mobile services to provide best ones to users. tôi mong muốn đưa đến cho người đọc những kiến thức tổng quan về hệ thống IMS và những hướng tiếp cận vấn đề phối hợp dịch vụ trong miền IMS và các dịch vụ Web. In this thesis. . operators continue to develop new architectures and unravel new network technologies. ABSTRACTION Along with the rapid growing of 3G network. internet đã phát triển với một tốc độ chóng mặt.

SIP Enabling Services Server (ví dụ máy chủ ứng dụng presence) Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 13 . Lý do chính cho việc phát triển mạnh mẽ này là khả năng cung cấp các dịch vụ tiện ích mà hàng trăm người sử dụng ưa thích. Thông qua giao diện ISC (IMS Service Control interface). Một trong những ví dụ điển hình là world wide web và email. đọc email. Cùng với sự phát triển của mạng thế hệ mới trong những năm gần đây. Người sử dụng có thể truy cập vào một trang web yêu thích. IMS là nhân tố chính trong kiến trúc mạng thế hệ mới làm cho nó có khả năng cung cấp truy cập tới tất cả các dịch vụ mà internet có thể cung cấp cho mạng tế bào. Sự ra đời của phân hệ IMS trong kiến trúc mạng thế hệ mới chính là bước phát triển quan trọng trong quá trình hợp nhất dịch vụ đó. các công nghệ mới nhằm thực hiện mục đích này. Việc phát triển hệ thống này không chỉ đem lại những lợi ích về mặt kinh tế cho nhà cung cấp dịch vụ mà còn đem lại nhiều tiện ích cho người sử dụng: • Về phía nhà cung cấp dịch vụ: cho phép đưa ra nhanh chóng các máy chủ ứng dụng với các dịch vụ mới vào trong mạng của nhà khai thác mạng di động. Internet đã phát triển với một tốc độ chóng mặt. presence. máy chủ ứng dụng SIP (ví dụ máy chủ ứng dụng push-totalk). VoD.… Với mong muốn kết hợp các dịch vụ Internet và các dịch vụ di động truyền thống để đáp ứng ngày một tốt hơn nhu cầu của khách hàng. xem phim hoặc tham gia một buổi hội thảo qua truyền hình ở bất cứ đâu mà chỉ bằng một cách đơn giản là sử dụng một chiếc điện thoại hỗ trợ 3G. các nhà phát triển đã không ngừng sáng tạo và đưa ra những kiến trúc mạng mới.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ 1 CHƯƠNG I : MỞ ĐẦU 1. Nhưng bên cạnh đó còn rất nhiều dịch vụ khác như instant message.1 Tầm quan trọng của đề tài Mục đích của mạng thế hệ thứ mới là hợp nhất hai mô hình thông tin đang được triển khai rộng rãi nhất hiện nay là mạng tế bào và mạng internet. VoIP. hội thảo truyền hình.

chức năng của từng thành phần. em tập trung nghiên cứu vấn đề “các phương pháp phối hợp và tương tác dịch vụ trong mạng thế hệ mới”. Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 14 . về cấu trúc SOA và web service và các phương pháp phối hợp: • Tổng quan về IMS: tìm hiểu về kiến trúc IMS. chất lượng dịch vụ được nâng cao.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ hay gateway có thể được kết nối vào IMS. sự tiện dụng cũng như chi phí thấp nhất sẽ chiếm được lợi thế trong cạnh tranh thị trường và do đó sẽ kiếm được nhiều lợi nhuận. các dịch vụ hoàn toàn sẵn có đối với người dùng thì nhà cung cấp dịch vụ nào thỏa mãn được người dùng về sự đa dạng trong dịch vụ cung cấp. Trong đề tài này. Vì vậy. trong đề tài này em sẽ tập trung tìm hiểu tổng quan về IMS. hỗ trợ nhiều loại truy nhập khác nhau… • Về phía người sử dụng: cho phép người sử dụng có thể truy nhập dễ dàng và an toàn vào mạng đa phương tiện.2 Nội dung nghiên cứu Với mục đích nghiên cứu các phương pháp phối hợp dịch vụ trong mạng thế hệ mới. Sự phát triển của mạng thế hệ mới và Internet mà cụ thể là IMS và web service kéo theo sự ra đời của hàng loạt dịch vụ mới. kiến trúc triển khai và một số các khái niệm quan trọng sử dụng trong IMS. các thành phần. 1. Khả năng cung cấp các dịch vụ với những tính năng như thế là hoàn toàn có thể đối với IMS. có cơ hội sử dụng nhiều các dịch vụ tiện ích mới… Một điểm nữa khá quan trọng là khi khoa học và công nghệ ngày càng phát triển. sự hội nhập giữa các nước ngày càng cao. yêu cầu đòi hỏi phải có các công nghệ mới thực hiện việc phối hợp và điều khiển tương tác để tránh xung đột giữa các dịch vụ này và có thể tạo ra các dịch vụ mới hoàn thiện hơn là rất quan trọng. Đây là một vấn đề cấp thiết trong quá trình phát triển của các mạng thế hệ mới.

cấu trúc khối SCIM mà 3GPP đề xuất và khối DFC Application Router. • So sánh phương pháp phối hợp dịch vụ trong hai miền : trình bày một số điểm khác biệt giữa hai miền viễn thông và web.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ • Các phương pháp điều khiển tương tác dịch vụ trong IMS : giới thiệu các phương pháp tương tác dịch vụ trong miền IMS. Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 15 . • Các phương pháp phối hợp dịch vụ trong miền web : giới thiệu về cấu trúc SOA và web service. trình bày một số phương pháp phối hợp dịch vụ mà trọng tâm là WS-BPEL. bao gồm phương pháp sử dụng iFC của SCSCF.

như băng thông cực đại có thể cấp cho người dùng dựa trên thuê bao của người dùng hoặc trạng thái hiện tại của mạng. • Tạo ra cơ chế nâng cao lợi nhuận vì cách sử dụng của mạng chuyển mạch gói di động. QoS cho một phiên liên quan được xác định bởi một số nhân tố.1 Các yêu cầu đối với IMS IMS hướng đến: • Kết hợp các xu thế mới nhất trong công nghệ. • Tạo ra nền tảng phổ biến để phát triển các dịch vụ đa phương tiện khác nhau.2 Chất lượng dịch vụ QoS Chất lượng dịch vụ (QoS – Quality of Service) là yêu cầu chủ yếu trong IMS. Giao tiếp multimedia được chuẩn hóa trong tài liệu 3GPP trước đây.1. 2. 2. nhưng những giao tiếp multimedia này diễn ra trên mạng chuyển mạch kênh hơn là trên mạng chuyển mạch gói. có một dịch vụ đặc biệt quan trọng với người dùng: đó là thông tin liên lạc audio và video. Mặc dù vậy.1. trong trường hợp này là audio và video. IMS cho phép nhà khai thác mạng điều Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 16 .Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ 2 CHƯƠNG II : CÁC NGUYÊN LÝ CHUNG TRONG KIẾN TRÚC IMS 2. Multimedia có liên quan đến sự tồn tại đồng thời của một vài loại media.1 Phiên đa phương tiện IP IMS có thể đưa ra một dải rộng các dịch vụ. Yêu cầu này nhấn mạnh đến sự cần thiết hỗ trợ dịch vụ chính được tạo ra bởi IMS: các phiên multimedia qua mạng chuyển mạch gói. • Tạo ra mô hình di động Internet.

Vì vậy.1. Đầu cuối IMS có thể kết nối được đến cả mạng chuyện mạch kênh và mạng chuyển mạch gói. do đó nó có thể cho phép người dùng chuyển vùng sang các quốc gia khác nhau. thì hầu hết các đầu cuối IMS sẽ hỗ trợ vùng chuyển mạch kênh. đầu cuối IMS sẽ chọn sử dụng vùng chuyển mạch kênh. do đó các nhà khai thác mạng có thể phân biệt các nhóm khách hàng khác nhau. Yêu cầu này sẽ được triển khai khi ta xây dựng đầu cuối IMS chỉ hỗ trợ chuyển mạch gói. số lượng đích đến tiềm năng cho các phiên đa phương tiện được mở rộng một cách đột ngột.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ khiển QoS mà người dùng đưa ra. Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 17 . ví dụ như khi chuyển sang một quốc gia khác. Vì thế.1. như mạng PSTN (Public Switched Telephone Network). Yêu cầu hỗ trợ tương tác với mạng chuyển mạch kênh có thể được coi như là một yêu cầu dài hạn. Người dùng có thể chuyển vùng sang các mạng khác. mặc dù tương tác với mạng chuyển mạch kênh không được yêu cầu một cách nghiêm ngặt.3 Internetworking Hỗ trợ cho tương tác với Internet là một yêu cầu rõ ràng với IMS.5 Điều khiển dịch vụ Các nhà khai thác mạng muốn áp dụng những chính sách trong việc phân phát dịch vụ đến người dùng. 2.4 Chuyển vùng (Roaming) Chuyển vùng (roaming) là yêu cầu chung kể từ khi phát minh ra mạng tế bào thứ hai. hay các mạng tế bào đang tồn tại. 2. 2. Chúng ta có thể chia những chính sách đó làm hai loại.1. khi người dùng muốn gọi đến điện thoại trong mạng PSTN hay mạng tế bào. Hiển nhiên là IMS sẽ kế thừa yêu cầu này. Internet đưa ra hàng triệu đích đến tiềm năng cho các phiên multimedia được khởi tạo trong IMS. Khi tương tác với Internet. IMS cũng được yêu cầu có thể làm việc được với mạng chuyển mạch kênh.

và IMS ra đời sẽ làm giảm việc chậm trễ đó. thì nhà vận hành mạng sẽ ngăn không cho phiên đó được khởi tạo. Ví dụ. nó ở lớp thấp hơn và độc lập truy nhập. Loại chính sách đầu tiên bao gồm một tập hợp các giới hạn được áp dụng cho tất cả người dùng trong mạng.7 Đa truy nhập Yêu cầu đa truy nhập ở đây nói đến các phương tiện truy nhập khác hơn GPRS. một người dùng có thể có vài thuê bao để sử dụng các dịch vụ IMS không bao gồm video.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ • Các chính sách chung có thể áp dụng được cho tất cả người dùng trong mạng. Trong quá khứ. họ có thể đưa ra các codec băng thông thấp hơn như AMR (Adaptive Multi Rate). nhà vận hành mạng có thể muốn giới hạn việc sử dụng audio codec băng rộng. Loại chính sách thứ hai bao gồm một tập các chính sách được đáp ứng cho mỗi người dùng.711 (ITU-T Recommendation G. 2. 2. Thậm chí các dịch vụ được chuẩn hóa thì không có gì đảm bảo rằng các dịch vụ sẽ làm việc khi chuyển sang một mạng khác. Yêu cầu này nói rõ các dịch vụ IMS không cần thiết phải được chuẩn hóa. Thay vì như thế. IMS là mạng all-IP và cũng như bất kỳ một mạng IP nào khác.6 Phát triển dịch vụ Yêu cầu về tạo ra dịch vụ có ảnh hưởng mạnh trong thiết kế kiến trúc IMS.1.711). Đầu cuối IMS sẽ hầu hết là có khả năng hỗ trợ video. IMS hướng đến làm giảm thời gian cần thiết khi đưa ra một dịch vụ mới. như G.1. • Các chính sách cá nhân có thể áp dụng cho một người dùng nhất định. Bất kỳ mạng truy nhập nào về nguyên tắc Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 18 . nhưng trong trường hợp nỗ lực khởi tạo một phiên multimedia mà có cả video. Yêu cầu này biểu diễn một dấu mốc trong thiết kế cellualar bởi vì trong quá khứ. mọi dịch vụ đơn đều được chuẩn hóa hoặc là có sự triển khai phù hợp. trong mạng của họ. Ví dụ. việc chuẩn hóa dịch vụ và kiểm tra vận hành gây ra sự chậm trễ lớn.

H.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ cũng có thể truy cập đến IMS. Không như BICC. BICC hỗ trợ và có thể chạy trên các công nghệ khác nhau như IP. H. 3GPP cam kết phát triển giải pháp cho việc cải tiến GSM. SIP tuân theo Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 19 . các giao thức điều khiển cuộc gọi nói chung là TUP (Telephony User Part). H. IMS có thể được truy nhập sử dụng WLAN (Wireless Local Area Network). Universal Mobile Telecommunication System) cho phiên bản đầu tiên của IMS (ví dụ.323 được thiết kế từ những ngày đầu tiên nhằm hỗ trợ công nghệ IP. Trong mạng chuyển mạch kênh. do đó báo hiệ có thể truyền qua một tập các nút riêng biệt chứ không đi qua mặt phẳng media. Thêm nữa. BICC tách biệt mặt phẳng báo hiệu ra khỏi mặt phảng media. Các giao thức được xem xét để sử dụng làm giao thức điều khiển phiên cho IMS hiển nhiên là dựa trên IP. Không như ISUP. ví dụ như WLAN.1 Giao thức điều khiển phiên Các giao thức điều khiển cuộc gọi đóng vai trò quan trọng trong bất kỳ một hệ thống điện thoại nào. H.323 là giao thức do ITU-T phát triển. HFC (Hybird Fiber Coax) hoặc là Cable Modem.323 : tương tự như BICC. SIP (Session Initiation Protocol) : được đặc tả bởi IETF như là một giao thức để thiết lập và quản lý các phiên multimedia qua mạng IP. báo hiệu và media không cần truyền qua cùng một tập các host.323. Release 5).2. 7) hay ATM (Asynchoronous Transfer Mode). Tuy nhiên. Ví dụ. Các phiên bản tiếp theo sẽ nghiên cứu các truy nhập khác. SS7 (Sinaling System No. ISUP (ISDN User Part) và BICC (Bearer Independent Call Control). Trong H.2 Tổng quan về các giao thức sử dụng trong IMS 2. tập trung vào truy nhập GPRS (cả trong GSM và UMTS. Các giao thức có thể được sử dụng là: Bearer Independent Call Control (BICC) : BICC là một cải tiến của ISUP.323 định nghĩa một giao thức mới để thiết lập phiên multimedia. 2. ADSL (Asymmetric Digital Subscriber Line).

Thực tế SIP làm cho việc tạo ra các dịch vụ mới trở nên dễ dàng và vì SIP dựa trên HTTP nên các nhà phát triển dịch vụ SIP có thể sử dụng tất cả các cơ chế được phát triển cho HTTP như CGI (Common Gateway Interface) và Java Servlet. 2. 2. mô hình được sử dụng bởi nhiều giao thức được phát triển bởi IETF. Các nhà thiết kế SIP đã mượn nguyên lý thiết kế từ SMTP (Simple Mail Transfer Protocol) và đặc biệt là HTTP (Hypertext Transfer Protocol). mặc dù không phải tất cả các giao diện sử dụng cùng một ứng dụng Diameter. SIP kế thừa hầu hết các đặc điểm của nó từ hai giao thức trên.2. Ví dụ. and Accounting) trong IMS. Các ứng dụng Diameter là sự lựa chọn hoặc mở rộng Diameter để phù hợp với một ứng dụng cụ thể trong một môi trường. Ví dụ. Diameter (là giao thức được định nghĩa trong RFC 3588) được chọn làm giao thức AAA (Authentication. Đó là một điểm mạnh của SIP bởi vì HTTP và SMTP là những giao thức thành công nhất trên Internet. Diameter bao gồm một giao thức cơ bản được bổ sung với ứng dụng Diameter. Authorization.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ mô hình client-server nổi tiếng. khi người dùng quay số đến nhà cung cấp dịch vụ Internet thì server truy nhập mạng sử dụng RADIUS để chứng thực (authenticate) và cấp quyền (authorize) cho người dùng truy cập mạng. SIP được chọn làm giao thức điều khiển phiên trong IMS.323. IMS sử dụng Diameter trong một số giao diện. IMS định nghĩa ứng dụng Diameter để tương tác với SIP trong quá trình phiên được thiết lập và một ứng dụng khác để thực hiện điều khiển tài khoản. SIP không giống như BICC và H.2. Điều đó có nghĩa là nó dễ dàng để mở rộng. sửa lỗi và sử dụng để xây dựng các dịch vụ.2 Giao thức AAA Ngoài giao thức điều khiển phiên thì còn có một số giao thức khác đóng vai trò quan trọng trong IMS. Diameter là một cải tiến của RADIUS (được định nghĩa trong RFC 2865).3 Các giao thức khác Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 20 . đó là một giao thức được sử dụng rộng rãi trong Internet để thực hiện AAA. SIP là giao thức dựa trên text.

RTP (Real-time Transport Protocol) và RTCP (RTP Control Protocol) được sử dụng để truyền dữ liệu thời gian thực như video và audio. Tuy nhiên.248 được phát triển bởi ITU-T và IETF cũng được đề cập đến như là giao thức MEGACO (Media Gateway Control). chúng ta nên nhớ rằng 3GPP không chuẩn hóa theo nút mà theo chức năng. 2. Điều đó có nghĩa là kiến trúc IMS là một tập hợp các chức năng được kết nối với nhau bởi các giao diện đã được chuẩn hóa. Các nhà triển khai có thể kết hợp hai chức năng vào một nút.3 Kiến trúc tổng quát IMS Trước khi tìm hiểu kiến trúc tổng quát IMS. Giao thức COPS (Common Open Policy Service) được sử dụng để truyền các chính sách giữa các PDP (Policy Decision Points) và PEP (Policy Enforcement Points). Nhìn chung thì hầu hết những dịch vụ cung cấp đều tuân theo kiến trúc IMS một cách chặt chẽ và triển khai mỗi chức năng trong một nút riêng. H.248 và các gói của nó được sử dụng bởi các nút tín hiệu điều khiển trong mặt phẳng media. Tương tự.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ Cùng với SIP và Diameter là các giao thức khác được sử dụng trong IMS. việc tìm kiếm các nút triển khai nhiều hơn một chức năng và các chức năng được phân phối qua nhiều hơn một nút là hoàn toàn có thể. Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 21 . H. các nhà triển khai có thể tách một chức năng thành hai hay nhiều nút.

Một ví dụ khác về phương pháp truy cập là WLAN và ADSL.3. Chúng ta không thể vẽ tất cả các giao diện được định nghĩa trong IMS mà chỉ có thể liệt kê hầu hết những nút giao diện có liên quan. Trong IMS được phân chia thành 3 phần: mạng truy nhập. Trong hình chỉ ra hầu hết các giao diện báo hiệu trong hệ thống IMS. Thiết bị hỗ trợ cá nhân PDAs và máy tính là các ví dụ về các thiết bị có thể kết nối tới IMS. nó thường được đề cập đến bởi hai hay ba ký tự mã hóa. chúng ta có thể nhìn thấy các đầu cuối IMS di động thường được nhắc đến như là các thiết bị người dùng (UE).1 Mạng truy nhập Ở phía bên trái hình 2-1. Chú ý rằng.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ Hình 2-1 : Tổng quan kiến trúc IMS Trong hình 2-1 minh họa một cái nhìn tổng quan về kiến trúc IMS như chuẩn hóa của 3GPP. 2. Đầu cuối IMS được nối vào mạng chuyển mạch gói như là GPRS thông qua đường truyền vô tuyến. mặc dù hình trên chỉ chỉ ra một thiết bị đầu cuối IMS nối vào mạng sử dụng đường truyền vô tuyến nhưng IMS cũng hỗ trợ các loại thiết bị và các cách truy nhập khác. mạng lõi và tầng dịch vụ. Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 22 .

2 Mạng lõi Phần còn lại của hình chỉ ra các nút bao gồm trong mạng lõi IMS. mạng với nhiều hơn một HSS yêu cầu có SLF.3.3.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ 2. thông tin bảo mật (bao gồm các thông tin nhận thực và phân quyền). HSS bao gồm các thông tin thuê bao liên quan đến người dùng được yêu cầu để điều khiển các phiên đa phương tiện. • Một hay vài máy chủ ứng SIP như là CSCF (Call Session Control Function).2. trong trường hợp số lượng thuê bao quá nhiều so với sự quản lý của một HSS. được chia nhỏ hơn thành SGW và MGCF. HLR là một nút trong mạng GSM. Các nút này là: • Một hay vài cơ sở dữ liệu người dùng. Những dữ liệu này bao gồm. với một địa chỉ người dùng là Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 23 . còn gọi là HSS và SLF. 2. Trong tất cả trường hợp. Mặt khác.1 Cơ sở dữ liệu HSS và SLF HSS (Home Subscriber Server) là trung tâm lưu trữ dữ liệu các thông tin liên quan đến người dùng. và S-CSCF cấp phát tới người dùng. Một mạng có thể chứa một hoặc một vài HSS. các thông tin về tiểu sử người dùng (bao gồm các dịch vụ mà người dùng đăng ký thuê bao). Các mạng với một HSS sẽ không cần SLF (Subscriber Location Function). tất cả các dữ liệu liên quan đến một người dùng cụ thể được chứa trong một HSS. • Một hay vài BGCF (Breakout Gateway Control Functions). Một nút yêu cầu truy vấn SLF. • Một hoặc vài PSTN gateways. thông tin vị trí. Về kỹ thuật thì HSS là sự phát triển của HLR (Home Location Register). • Một hay vài MRF mỗi cái được chia nhỏ thành MRFC và MRFP. SLF là một cơ sở dữ liệu đơn giản ánh xạ địa chỉ người dùng tới HSS quản lý tương ứng.

là một nút cần thiết trong IMS. và không thay đổi trong suốt quá trình đăng ký. Một vài mạng có thể sử dụng thiết bị kiểm soát biên phiên SBC (Session Border Controller) để thực hiện chức năng này. người dùng trước tiên phải đăng ký với P-CSCF trong mạng mà nó đang kết nối.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ đầu vào. Các CSCF xử lý các bản tin báo hiệu SIP trong IMS. sẽ thu được ở đầu ra là HSS có chứa thông tin liên quan đến người dùng đó. o P-CSCF xác thực người dùng và thiết lập kết nối bảo mật IPSec với thiết bị đầu cuối IMS của người dùng. Nó có thể được đặt ở mạng khách (trong toàn bộ mạng IMS) hoặc mạng chủ. o P-CSCF nằm trên đường đi của tất cả các bản tin báo hiệu và có thể được gán vào mỗi bản tin. Chức năng của P-CSCF bao gồm: o P-CSCF có nhiệm vụ đảm bảo chuyển tải các yêu cầu từ UE đến máy chủ SIP (ở đây là S-CSCF) cũng như bản tin phản hồi từ máy chủ SIP về UE. là điểm đầu tiên liên lạc giữa đầu cuối IMS và mạng IMS.2. Cả HSS và SLF đều thực thi giao thức Diameter với các đặc trưng ứng dụng diameter cho IMS. o P-CSCF được gán cho đầu cuối IMS trong suốt quá trình đăng ký.3. Có ba loại CSCF phụ thuộc vào các chức năng mà chúng cung cấp: • Proxy-CSCF (P-CSCF) : là một máy chủ SIP. P-CSCF còn Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 24 . Địa chỉ của P-CSCF được truy cập thông qua giao thức DHCP (Dynamic Host Configuration Protocol) hoặc sẽ được cung cấp khi người dùng tiến hành thiết lập kết nối PDP (Packet Data Protocol) trong mạng thông tin di động tế bào. 2. Để kết nối với hệ thống IMS.2 Chức năng điều khiển cuộc gọi phiên Điều khiển cuộc gọi phiên (CSCF) là một máy chủ SIP.

Để làm được điều này. • Interrogating-CSCF (I-CSCF) : là một chức năng SIP khác được đặt ở biên của miền quản trị. Nếu như chưa có S-CSCF nào được gán cho UE. replay để đảm bảo sự bảo mật và an toàn cho người dùng. Các chức năng của I-CSCF bao gồm: o Định tuyến bản tin yêu cầu SIP nhận được từ một mạng khác đến S-CSCF tương ứng. Địa chỉ IP của I-CSCF được công bố trong DNS (Domain Name System) của miền. I-CSCF sẽ định tuyến bản tin yêu cầu SIP hoặc bản tin trả lời SIP đến một S-CSCF/I-CSCF nằm trong mạng của một nhà cung cấp dịch vụ khác. để giảm thiểu khối lượng thông tin báo hiệu truyền trên những đường truyền tốc độ thấp (hay giảm độ trễ khi truyền trên các kênh có băng thông hẹp). I-CSCF sẽ truy vấn HSS thông qua giao diện Diameter Cx để cập nhật địa chỉ S-CSCF tương ứng của người dùng (giao diện Dx được dùng để từ I-CSCF tới SLF để định vị HSS cần thiết). o P-CSCF có thể tích hợp chức năng quyết định chính sách PDF (Policy Decision Function) nhằm quản lý và đảm bảo QoS cho các dịch vụ đa phương tiện. o P-CSCF có thể nén và giải nén các bản tin SIP dùng sigcomp. Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 25 . vì thế các máy chủ ứng dụng ở xa có thể tìm thấy I-CSCF và sử dụng I-CSCF như một điểm chuyển tiếp cho các gói tin SIP tới miền này.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ có vai trò ngăn cản các tấn công như spoofing. o P-CSCF cũng tham gia vào quá trình tính cước dịch vụ. o Ngược lại. I-CSCF sẽ tiến hành gán một I-CSCF cho người dùng để nó xử lý yêu cầu SIP.

Các máy chủ ứng dụng này sẽ cung cấp các khả năng về một dịch vụ tới người dùng.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ I-CSCF luôn luôn được đặt tại mạng chủ. o Để tải hồ sơ người dùng từ HSS. S-CSCF sẽ kiểm tra mỗi bản tin SIP và quyết định xem liệu bản tin báo hiệu này nên đi qua một hay nhiều máy chủ ứng dụng trên đường đi tới đích cuối cùng của nó. S-CSCF vận hành giống như một máy chủ SIP nhưng nó cũng bao hàm cả chức năng quản lý phiên dịch vụ. Cũng giống như I-CSCF. Lý do chính của việc sử dụng giao diện với HSS là: o Để tải các vector nhận thực của người dùng đang cố gắng truy cập mạng từ HSS. S-CSCF sử dụng vector này để nhận thực người dùng. Tất cả các bản tin báo hiệu SIP mà đầu cuối IMS gửi và nhận đều đi quá S-CSCF. Thêm vào việc thực hiện chức năng là một máy chủ SIP thì nó cũng đóng vai trò như một trung tâm đăng ký SIP (SIP registrar). Điều này có nghĩa là nó duy trì mối liên hệ giữa vị trí của người dùng (nói cách khác là địa chỉ IP của thiết bị đầu cuối mà người dùng đăng nhập) với địa chỉ SIP của người dùng đó (cũng được biết đến như là định danh chung của người dùng – Public User Identity). S-CSCF cũng thực thi một giao diện diameter với HSS. I-CSCF được đặt tại mạng khách là tốt nhất. • Serving-CSCF (S-CSCF) : là một nút trung tâm của hệ thống báo hiệu IMS. o Để khai báo với HSS về S-CSCF được cấp cho người dùng trong suốt quá trình đăng ký. trong một số trường hợp như THIG (Topology Hiding Inter-network Gateway). Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 26 . Hồ sơ người dùng bao gồm các triggers có thể làm cho bản tin SIP được định tuyến qua một hoặc vài máy chủ ứng dụng.

248. một người dùng có thể không có quyền thiết lập một phiên cụ thể nào cả. MRF luôn đặt ở mạng chủ. MRFP triển khai tất cả các hàm liên quan đến media như là chơi và trộn media. Mỗi S-CSCF phục vụ một số lượng đầu cuối tùy thuộc vào dung lượng của nó. chuyển đổi giữa các loại mã hóa. S-CSCF cũng tác động vào chính sách mạng của nhà cung cấp. MRF (Media Resource Function) cung cấp cho mạng chủ khả năng đưa ra các thông báo trong luồng media (ví dụ trong cầu hội thảo tập trung).3 Máy chủ xử lý media Máy chủ xử lý media (MRF) cung cấp tài nguyên media trong mạng chủ. thường dựa trên chuẩn DNS E.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ Một chức năng chính của S-CSCF là cung cấp dịch vụ định tuyến bản tin SIP. Nếu người dùng quay số điện thoại thay vì sử dụng SIP URI (Uniform Resource Identifier) thì S-CSCF cung cấp một dịch vụ chuyển đổi.2. Ví dụ. MRFC điều khiển tài nguyên trong MRFP thông qua giao diện H. 2. S-CSCF tránh cho người dùng thực hiện các chức năng không được cho phép.3. MRFC hoạt động như là một SIP User Agent và chứa các giao diện SIP với S-SCSF. thu nhận số liệu thống kê và thực hiện bất cứ loại phân tích media nào. MRF còn được chia thành một nút nhỏ hơn trong miền báo hiệu gọi là MRFC (Media Resource Function Controller) và một nút trong miền media là MRFP (Media Resource Function Processor). Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 27 . S-CSCF luôn luôn được đặt tại mạng chủ.164 Number Translation (DNS/ENUM) (được mô tả trong RFC-2916 [100]). Một mạng thường bao gồm một số các S-CSCF cho mục đích mở rộng và dự phòng.

3. nếu tương tác xảy ra trong cùng một mạng mà BGCF được đặt.3. BGCF (Breakout Gateway Control Function) chỉ dùng trong các phiên được khởi tạo bởi đầu cuối IMS và hướng tới một người dùng trong mạng chuyển mạch kênh như là PSTN hay PLMN.2. Hình 2-2 : Giao tiếp giữa PSTN/CS gateway và mạng CS Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 28 .Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ 2. cho phép các thiết bị đầu cuối IMS gọi và nhận cuộc gọi tới PSTN và từ PSTN.5 PSTN/CS Gateway PSTN gateway cung cấp một giao diện hướng tới một mạng chuyển mạch kênh. Chức năng chính của BGCF là: • Lựa chọn mạng thích hợp nơi mà tương tác với miền chuyển mạch kênh xảy ra.2. 2.4 Chức năng điều khiển cổng chuyển mạng Chức năng điều khiển cổng chuyển mạng (BGCF) thực hiện chủ yếu là chức năng của máy chủ SIP bao gồm chức năng định tuyến dựa trên số điện thoại. • Hoặc lựa chọn cổng PSTN/CS phù hợp.

Hơn nữa. MGW sử dụng một hoặc nhiều khe thời gian PCM (Pulse Code Modulation) để kết nối tới mạng CS. Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 29 .1901 [140]) trên MTP thành ISUP hoặc BICC trên SCTP/IP. Một mặt MGW có thể gửi hoặc nhận media của IMS thông qua giao thức RTP (RFC 3550 [225]). • MGW (Media Gateway) : Media Gateway giao tiếp với mặt phẳng media của mạng PSTN hoặc mạng CS. SGW chuyển đổi ISUP (ITU-T khuyến nghị Q. được định nghĩa tại RFC 2960 [230]) trên địa chỉ IP.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ Hình 2-2 mô tả một BGCF và một PSTN gateway riêng biệt có giao tiếp mạng với PSTN. PSTN gateway được phân tích thành các chức năng sau: • SGW (Signalling Gateway) : Signalling gateway giao tiếp với mặt phẳng báo hiệu của mạng chuyển mạch kênh. SGW thực hiện biến đổi giao thức ở lớp thấp hơn.248 [143]). MGCF triển khai một cơ chế thực hiện chuyển đổi giao thức và ánh xạ SIP sang hoặc là ISUP trên IP hoặc là BICC trên IP (cả BICC và ISUP đều là các giao thức điều khiển cuộc gọi trong mạng chuyển mạch kênh).248 (ITU-T khuyến nghị H. MGW thực hiện chuyển đổi mã khi đầu cuối IMS không hỗ trợ codec được sử dụng bởi mạng chuyển mạch kênh.761 [139]) hoặc BICC [ITU-T khuyến nghị tại Q. Vì thế. Mặt khác. • MGCF (Media Gateway Control Function) : MGCF là nút trung tâm của PSTN/CS gateway. Một tình huống phổ biến thường xảy là khi thiết bị đầu cuối IMS sử dụng bộ giải mã AMR trong khi đó thiết bị đầu cuối của mạng PSTN lại sử dụng bộ giải mã G. Thêm vào đó.711 [131]).711 (ITU-T khuyến nghị G. Ví dụ: SGW có nhiệm vụ thay thế các giao thức MTP (ITU-T khuyến nghị Q. Giao thức được sử dụng giữa MGCF và MGW là H.701 [133]) ở mức thấp hơn vận chuyển cùng với SCTP (Stream Control Transmission Protocol. để biến đổi giao thức điều khiển cuộc gọi thì MGCF điều khiển nguồn tài nguyên trong MGW (Media Gateway).

Mặt khác. khi đó là chúng ta đang sử dụng cơ sở hạ tầng do các nhà điều hành mạng cung cấp.2. Trong mô hình tế bào. Để sử dụng mạng khách thì các nhà điều hành mạng khách và mạng chủ phải có một thỏa thuận với nhau. chúng ta sử dụng cơ sở hạ tầng được cung cấp bởi một nhà điều hành mạng khác. Cấu hình này thể hiện tầm nhìn lâu dài về IMS vì nó yêu cầu IMS hỗ trợ thực hiện từ mạng khách. Thêm vào đó. cho chúng ta thấy cấu hình P-CSCF (và GGSN) đặt tại mạng khách. nút đó là P-CSCF. GPRS cho phép vị trí của GGSN hoặc ở trong mạng chủ hoặc ở trong mạng khách (bình thường SGSN luôn được đặt ở mạng khách). Cơ sở hạ tầng này được gọi là mạng khách (visited network). Điều này cho phép P-CSCF điều khiển GGSN qua giao diện Go. Cở sở hạ tầng này hình thành mạng chủ (home network).3. Các thỏa thuận này có thể là giá cuowics cuộc gọi. Vì cả P-CSCF và GGSN đều nằm trong cùng một mạng nên giao diện Go luôn luôn là giao diện hoạt động bên trong và làm cho việc hoạt động của mạng đơn giản hơn. Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 30 . Trong tình huống chuyển vùng. khi IP-CAN (IP Connectivity Access Network) là GPRS thì vị trí của P-CSCF phụ thuộc vào vị trí của GGSN.6 Mạng chủ và mạng khách IMS mượn một vài khái niệm từ GSM và GPRS như mạng chủ và mạng khách. Kiến trúc IMS cho phép hai cấu hình khác nhau cho P-CSCF. Trong IMS cả GGSN và P-CSCF phải nằm trong cùng một mạng.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ 2. chất lượng dịch vụ hoặc là phương thức quy đổi bảng tính cước. khi chúng ta sử dụng điện thoại di động trong khu vực nơi chúng ta cư trú. khi chúng ta chuyển ra ngoài khu vực che phủ của mạng chủ. Hình 2-3. Hầu hết các nút IMS được đặt tại mạng chủ nhưng có nút cũng được đặt trong mạng khách hoặc mạng chủ. tùy thuộc vào vị trí của P-CSCF ở mạng khách hay mạng chủ.

Mạng khách không cần phải có GGSN tuân theo phiên bản 3GPP Release 5. cấu hình này được triển khai từ những ngày đầu của IMS. Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 31 . Vì vậy chúng ta chỉ có thể mong chờ việc sớm có sự triển khai IMS mà P-CSCF ở trong mạng chủ như hình 2-4 dưới đây. Hình 2-4: P-CSCF đặt tại mạng chủ Hình 2-4 chỉ ra cấu hình hiện tại khi cả P-CSCF và GGSN đều đặt tại mạng chủ. người ta mong muốn rằng nó sẽ là cấu hình phổ biến trong những năm đầu triển khai IMS. Do đó cũng không thể mong chờ tất cả các mạng thành phần sẽ cập nhật các GGSN theo cùng một chuẩn tại cùng một thời điểm và cùng bắt đầu cung cấp dịch vụ IMS. Như một hệ quả.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ Hình 2-3 : P-CSCF đặt tại mạng khách Không thể mong đợi tất cả các mạng trên thế giới đều triển khai IMS đồng thời. Cấu hình này không yêu cầu sự hỗ trợ IMS từ mạng khách. Vì thế. Mạng khách chỉ cần cung cấp liên lạc vô tuyến và SGSN.

Kiến trúc IMS được thiết kế để cho phép các nhà điều hành cung cấp dải rộng các dịch vụ dựa trên chuyển mạch gói và thời gian thực.3. Nếu nằm trong mạng chủ. Phụ thuộc vào các dịch vụ thực tế mà máy chủ ứng dụng có thể hoạt động ở các chế độ: SIP proxy.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ 2. IMS kế thừa tất cả các dịch vụ ưu việt nhất của mạng viễn thông và mạng internet đặc biệt là các dịch vụ đa phương tiện bao gồm các dịch vụ gọi thông thường và các dịch vụ nâng cao như: • Nhấn tin đa phương tiện • Hội thảo đa phương tiện • Click to dial • Dịch vụ kiểm tra trạng thái người dùng (Presence) • Dịch vụ instant message Tầng dịch vụ được thiết kế tách rời với mạng lõi và mạng truy nhập đã được chuẩn hóa. Các máy chủ ứng dụng là các thực thể SIP thực hiện dịch vụ và giao tiếp với S-CSCF sử dụng SIP. Như đã nói ở trên. chế độ SIP UA (User Agent) hay chế độ SIP B2BUA (Back-to-Back User Agent). IMS cũng cho phép lưu lại các thông tin của dịch vụ để có thể tính cước dựa theo thời gian cũng như dựa trên dịch vụ và băng thông.3 Tầng dịch vụ Phần này bao gồm các máy chủ ứng dụng có nhiệm vụ cung cấp các dịch vụ tới người dùng cuối. Từ đặc điểm thiết kế của mình. Máy chủ ứng dụng có thể nằm trong mạng chủ hoặc trong một mạng thứ ba bên ngoài. hay giao diện MAP (Mobile Application Part) cho loại máy chủ IM-SSF (IP Multimedia Service Switching Function). Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 32 . nó có thể truy vấn HSS qua giao diện diameter Sh (cho máy chủ ứng dụng). ưu điểm lớn nhất của IMS là khả năng phát triển các dịch vụ mới một cách dễ dàng.

Trong IMS. 2. ví dụ như 800. Thực chất chúng chỉ là các cách biểu diễn khác nhau của cùng một thuê bao. Nhà cung cấp dịch vụ nội hạt có trách nhiệm cấp phát các định danh này cho mỗi thuê bao IMS. Nếu chúng ta so sánh giữa IMS và GSM. đôi khi nó cũng yêu cầu định danh dịch vụ. Thêm vào đó. định danh người dùng công cộng được sử dụng để định tuyến các bản tin báo hiệu SIP. IMS cũng cung cấp cơ chế để định danh dịch vụ. Định danh người dùng công cộng được sử dụng như thông tin liên lạc trong thẻ thương mại. thường có phần tiếp đầu đặc biệt. Trong mạng PSTN.4 Định danh trong IMS Trong bất kỳ một mạng nào cũng đều phải dịnh danh được người dùng một cách duy nhất. Trong mạng điện thoại công cộng. Đây là thuộc tính cho phép một điện thoại nhất định đổ chuông mà không phải là một điện thoại khác khi chúng ta quay số trong mạng PSTN. một dịnh danh người dùng công Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 33 . dịch vụ được định danh bởi những số đặc biệt. Độ dài của chuỗi số phụ thuộc vào đích đến của cuộc gọi (ví dụ như cùng một khu vực. Một người dùng IMS cũng được cấp phát một hay nhiều định danh người dùng công cộng.4. khi một dịch vụ được cung cấp. khác vùng hay quốc gia khác). Một danh người dùng công cộng có thể là một SIP URI (như định nghĩa trong RFC 3261 [215]) hay một TEL URI (như định nghĩa trong RFC 3966 [220]).Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ 2. Vấn đề trung tâm của bất kỳ một mạng nào là khả năng của nhà cung cấp định danh người dùng để cho cuộc gọi có thể đến được đúng người dùng. số ngoại hạt hay số dạng quốc tế.1 Định danh người dùng công cộng Trong IMS cũng có một cách tiền định để xác định người dùng. người dùng được định danh bởi số điện thoại (là một tập hợp các chữ số theo thứ tự định danh thuê bao điện thoại). Số điện thoại xác định chủ thuê bao có thể được biểu diễn dưới nhiều dạng khác nhau: dạng số nội hạt.

last@operator. IMS mang đến một khái niệm thú vị: một tập hợp định danh người dùng công cộng được đăng ký. như là khả năng phân biệt các định danh cá nhân mà bạn bè và người thân đã biết với định danh công cộng dùng trong công việc kinh doanh được biết đến bởi các đồng nghiệp. bởi vì số điện thoại PSTN được biểu diễn dưới dạng số. nó thường có dạng là sip:first.user=phone Định dạng này là cần thiết bởi SIP yêu cầu URI được đăng ký dưới là SIP URI. Thêm vào đó. Mặt khác.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ cộng đối với IMS cũng giống như một định danh MSISDN (Mobile Subscriber ISDN Number) trong mạng GSM. Khi định danh người dùng công cộng chứa SIP URI. Trong IMS. Trong hoạt động thông thường của SIP. bởi vì người dùng PSTN chỉ có thể quay số. Có rất nhiều lý do cho việc cấp nhiều hơn một định danh người dùng công cộng cho một người dùng.com. ta có thể đăng Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 34 .com. nó không thể đăng ký TEL URI trong SIP. mặc dù nhà cung cấp IMS có thể chuyển đổi dạng thức này và thỏa mãn theo nhu cầu của họ. TEL URI là một dạng khác mà định danh người dùng công cộng có thể sử dụng được. Chúng ta hình dung các nhà cung cấp dịch vụ sẽ cấp ít nhất một SIP URI và một TEL URI cho mỗi một người dùng. Do đó. mặc dù hoàn toàn có thể đăng ký một SIP URI có chứa một số điện thoại. cũng có khả năng bao hàm số điện thoại trong SIP URI sử dụng định dạng sau: sip:+1-212-555-0293@operator. TEL URI cũng cần thiết nếu một thuê bao PSTN muốn thực hiện một cuộc gọi đến một người dùng IMS. Dưới đây là một TEL URI được trình bày dưới dạng số điện thoại quốc tế: tel:+1-212-555-0293 TEL URI là cần thiết để thực hiện một cuộc gọi từ đầu cuối IMS sang mạng điện thoại công cộng PSTN. mỗi định danh cần đăng ký yêu cầu một bản tin SIP REGISTER. hoặc là để kích hoạt một nhóm các dịch vụ.

thẻ thông minh lưu định danh người dùng riêng và có ít nhất một định danh người dùng công cộng. bởi vì nó có thể được lưu trong một thẻ thông minh cũng giống như IMSI được lưu trong SIM (Subscriber Identity Module).4. 2. định danh người dùng riêng không được sử dụng để định tuyến bản tin yêu cầu SIP. theo quy ước của RFC 2486 [451]). chứa định danh người dùng riêng và một tập hợp các định danh người dùng công cộng được gán cho người dùng. 2. định danh người dùng riêng và một số định danh người dùng công cộng được thể Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 35 . Một định danh người dùng riêng thực hiện chức năng trong IMS tương tự như IMSI (International Mobile Subscriber Identifier) trong mạng GSM. Không giống như định danh người dùng công cộng.4.com. HSS và S-CSCF cũng có tương quan với định danh người dùng cộng và định danh người dùng riêng. Không như định danh người dùng công cộng.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ ký một vài định danh người dùng công cộng trong một bản tin. Mối quan hệ giữa một thuê bao.2 Định danh người dùng riêng Mỗi thuê bao IMS được cấp một định danh người dùng riêng. định danh người dùng riêng không phải là một SIP URI hay TEL URI. Định dạng của NAI là: username@operator. HSS là một cơ sở dữ liệu chung cho mọi dữ liệu liên quan đến thuê bao. Trong trường hợp GSM/UMTS (Universal Mobile Telecommunication System).3 Mối quan hệ giữa định danh công cộng và định danh riêng Nhà cung cấp dịch vụ cấp một hoặc nhiều định danh người dùng công cộng cho mỗi một người dùng. Định danh người dùng riêng không cần người dùng biết đến. mà thay vào đó chúng thường có định dạng của định danh người dùng truy nhập NAI (Network Access Identifier. điều này nhằm tiết kiệm thời gian và băng thông. thay vào đó chúng được dành riêng cho việc định danh thuê bao và cho mục đích nhận thực.

Hình 2-5 : Quan hệ giữa định danh người dùng riêng và định danh người dùng công cộng theo 3GPP R5 3GPP Release 6 mở rộng mối quan hệ giữa định danh người dùng riêng và định danh người dùng chung như ở hình 2-6 dưới đây. bởi vì nó được gán cho cả định danh người dùng riêng số 1 và số 2. Đó là trường hợp của định danh người dùng công cộng số 2 trong hình 2-6. Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 36 . nhưng người dùng có thể có nhiều thẻ thông minh khác nhau mà họ có thể cho vào đầu cuối IMS. Có thể các định danh người dùng công cộng này được sử dụng kết hợp với nhiều hơn một dịnh danh người dùng riêng.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ hiện như trong hình 2-5. mỗi một thiết bị được gán một định danh người dùng riêng khác nhau (ví dụ như các thẻ thông minh khác nhau được gắn vào các đầu cuối khác nhau). Trong trường hợp UMTS. Điều này cho phép định danh người dùng công cộng số 2 có thể sử dụng đồng thời từ hai đầu cuối IMS. Một thuê bao IMS được cấp không chỉ một mà là một số định danh người dùng riêng. chỉ một định danh người dùng riêng được lưu trữ trong thẻ thông minh. Đây là trường hợp của IMS như chuẩn hóa trong 3GPP Release 5.

4. một máy chủ ứng dụng phục vụ một chatroom được định danh bởi PSI.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ Hình 2-6 : Quan hệ giữa định danh người dùng riêng và định danh người dùng công cộng theo 3GPP R6 2. một PSI là một định danh được cấp phát cho dịch vụ trên máy chủ ứng dụng (AS – Application Server).4. Một PSI đặc trưng (Distinct PSI) có chứa PSI được sử Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 37 . PSI không liên quan đến định danh người dùng riêng.4 Định danh dịch vụ công cộng 2. Ví dụ. PSI không được áp dụng cho người dùng.4. Không giống định danh người dùng công cộng.4. PSI có thể có dạng SIP URI hoặc TEL URI. Giống như định danh người dùng công cộng. Sở dĩ như vậy là do định danh người dùng riêng chỉ sử dụng dành cho mục đích nhận thực.2 Phân loại PSI PSI được chứa trong HSS dưới dạng hoặc là PSI đặc trưng hoặc là Wildcarded PSI.4. Không giống như định danh người dùng công cộng. 2.1 Định nghĩa PSI Khái niệm của định danh dịch vụ công cộng (PSI – Public Service Identities) được giới thiệu trong 3GPP Release 6.

Khi được chứa trong HSS.*!@example. Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 38 . UICC còn có thể chứa các ứng dụng khác như danh bạ điện thoại.com sip:chatlist42@example.com”.com sip:chatlistabc@example.com”. UICC lưu trữ một số dữ liệu như thông tin đăng ký thuê bao.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ dụng trong quá trình định tuyến. sổ địa chỉ và các tin nhắn. Khi chứa trong HSS: sip:chatlist1@example. Trong khi Wildcarded PSI là một tập hợp các PSI.com sip:chatlist2@example. Wildcarded PSI cho phép người dùng tối ưu hoạt động và duy trì các nút. Ví dụ các PSI sau giao tiếp trên giao diện bản tin với HSS sẽ được đổi thành “sip:chatlist!. Một Wildcarded PSI có chứa hơn hai dấu chấm than sẽ được xem như một cặp dấu ngăn cách. UICC có thể bao gồm một vài ứng dụng logic như SIM (Subscriber Identity Module). UICC là một khái niệm chung định nghĩa các đặc tính của thẻ thông minh. mã nhận thực.com sip:chatlist!1@example. Nếu không có UICC thì thiết bị đầu cuối chỉ có thể gọi các số khẩn cấp. Wildcarded PSI sẽ bao gồm các ký tự ngăn cách để xác định phần mở rộng của PSI.5 SIM. USIM và ISIM trong 3GPP UICC (Universal Integrated Circuit Card) là trung tâm trong thiết kế thiết bị đầu cuối 3GPP. UICC là một thẻ thông minh có thể tháo lắp và mang theo người một cách rất đơn giản.*!@example. Thêm vào đó. UICC cho phép người dùng di chuyển dễ dàng thông tin thuê bao của họ sang thiết bị mới bằng cách lắp thẻ thông minh sang thiết bị đó. Ví dụ: PSI sau có thể chứa trong HSS “sip:chatlist!. USIM (Universal Subscriber Identity Module) và ISIM (IP multimedia Services Identity Module).com 2.

USIM cung cấp một tập hợp các tham số bao gồm thông tin đăng ký thuê bao.2 USIM USIM là một ứng dụng khác nằm trong UICC. Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 39 . ISIM có thể tồn tại cùng SIM. ISIM có vai trò đặc biệt quan trọng trong IMS. USIM hoặc tất cả các ứng dụng trong cùng UICC. 2. cấu hình thiết bị đầu cuối hoạt động trong mạng IMS.5. Mặc dù khái niệm UICC và SIM là có thể thay đổi cho nhau. 2. trong khi đó SIM được xem như một ứng dụng đơn lẻ nằm trong UICC. Các thiết bị đầu cuối trong mạng chuyển mạch gói và chuyển mạch kênh cần phải có USIM để hoạt động được trong mạng di động thế hệ thứ ba. phương pháp thanh toán và lưu trữ tin nhắn.3 ISIM Một ứng dụng thứ ba có thể hiện diện trong UICC là ISIM.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ 2. SIM được sử dụng rộng rãi trong các mạng di động thế hệ thứ hai. Rõ ràng.5. như mạng GSM. mã nhận thực và các tin nhắn. bởi vì ISIM có chứa một tập hợp các thông số được sử dụng làm chứng thực người dùng. nhận dạng người dùng. UICC được xem như một thẻ vật lý. thông tin nhận thực. cả SIM và USIM có thể cùng tồn tại đồng thời trong UICC để thiết bị đầu cuối có thể sử dụng đồng thời mạng GSM và UMTS. USIM được sử dụng để truy nhập mạng UMTS. SIM là thành phần cơ bản nhất trong các thiết bị đầu cuối để người dùng có thể hòa mạng.5.1 SIM SIM lưu trữ một tập hợp các tham số như thông tin đăng ký người dùng.

Đồ án tốt nghiệp đại học

Khảo sát các phương pháp phối hợp và tương tác dịch vụ

3 CHƯƠNG III : ĐIỀU KHIỂN PHIÊN TRONG IMS
3.1 Chức năng của SIP

3.1.1 Mô tả phiên và SDP
Một mô tả phiên là một mô tả bao gồm những thông tin cần thiết cho các người dùng ở xa có thể tham gia vào phiên đó. Trong các phiên đa phương tiện trên internet, những thông tin này bao gồm địa chỉ IP và tên cổng để gửi đi và các bộ mã hóa – giải mã dùng để mã hóa voice và hình ảnh cần gửi của người tham gia. Những mô tả về phiên có những định dạng riêng. Định dạng hay dùng nhất là giao thức mô tả phiên SDP (Session Description Protocol), được định nghĩa trong RFC 2327 [115]. SDP đơn giản là một định dạng văn bản miêu tả các phiên multimedia. Hình 3-1 là một ví dụ minh họa mô tả phiên giữa Alice và Bob. SDP chứa thông tin về địa chỉ IP, số cổng mà Alice muốn nhận audio (20000) và nhận video (20002), các bộ mã hóa giải mã audio và video mà Alice hỗ trợ (0 tương ứng với luật mã hóa audio μ G.711 và 31 tương ứng với bộ mã hóa H.261) và thông tin về chủ đề của cuộc hội thoại.

Hình 3-7 : Một ví dụ về mô tả phiên SDP Như ta đã thấy ở hình trên, một mô tả SDP bao gồm hai phần thông tin về phiên và thông tin về media. Thông tin về phiên trải toàn bộ phiên và xuất hiện trước dòng “m=”. Năm dòng đầu tiên tương ứng với thông tin về phiên.

Nguyễn Quang Dũng – Điện Tử 4– K50

Trang 40

Đồ án tốt nghiệp đại học

Khảo sát các phương pháp phối hợp và tương tác dịch vụ

Chúng cung cấp những thông tin về nhận dạng người dùng (v= và o=), chủ đề của phiên (s=), địa chỉ của Alice (c=) và thời gian của phiên (t=). Thông tin về media là luồng media cụ thể bao gồm dòng “m=” và một số lựa chọn “a=” cung cấp thông tin về luồng media. Trong ví dụ hình 3-1 có hai dòng media và vì vậy có hai dòng “m=”. Dòng “a=” chỉ ra luồng media ở đây là hai chiều (các user gửi và nhận media). Như minh họa trên hình 3-1, định dạng của tất cả các dòng SDP bao gồm dạng “kiểu = giá trị”, “kiểu” là một chữ cái. Hình 3-2 chỉ ra các “kiểu” trong SDP. Mặc dù SDP là một định dạng phổ biến miêu tả các phiên đa phương tiện nhưng SIP không phụ thuộc vào SDP. SIP là một dạng độc lập với việc mô tả phiên tức là SIP có thể đưa ra một mô tả phiên dùng SDP hay là bất kỳ một dạng khác.

Hình 3-8 : Các kiểu trong SDP

3.1.2 Mô hình Offer/Answer
Trong ví dụ về SDP ở hình 3-1, Alice gửi một mô tả phiên đến Bob có chứa địa chỉ của Alice (bao gồm địa chỉ IP và số hiệu cổng). Tất nhiên như thế là chưa đủ để thiết lập một phiên giữa hai người. Alice cũng cần phải biết địa

Nguyễn Quang Dũng – Điện Tử 4– K50

Trang 41

Đồ án tốt nghiệp đại học

Khảo sát các phương pháp phối hợp và tương tác dịch vụ

chỉ tương ứng của Bob. SIP cung cấp phương thức trao đổi mô tả phiên giữa hai người gọi là mô hình offer/answer (được mô tả trong RFC 3264 [212]). Một trong hai người dùng (offerer) tạo ra một mô tả phiên (offer) và gửi nó tới một người dùng khác (answerer) tạo ra một mô tả phiên mới (answer) để gửi tới offerer. RFC 3264 [212] đưa ra những quy định về phương cách tạo ra offer và anser. Sau khi trao đổi offer/answer cả hai người sẽ có những thông tin về phiên được thiết lập. Họ sẽ biết định dạng cần sử dụng và địa chỉ để truyền tải cho phiên đó. Trao đổi offer/answer cũng có thể cung cấp những thông tin khác như mã và giải mã… Hình 3-3 minh họa việc Bob gửi lại cho Alice sau khi nhận được một offer của Alice.

Hình 3-9 : Mô tả phiên SDP của Bob Địa chỉ của Bob là 192.0.0.2, số cổng nơi Bob nhận audio là 30000, số cổng nơi Bob nhận video là 30002 và Bob cũng dùng bộ mã hóa – giải mã giống Alice (G.711 μ-law và H.261). Sau khi trao đổi offer/answer cả hai có thể trao đổi về audio và video cho nhau.

3.1.3 SIP và SIPS URIs
SIP nhận dạng người dùng bằng SIP URI tương tự như địa chỉ của một email, SIP URI bao gồm tên và một tên miền. Thêm vào đó, SIP URI có thể chứa một số các thông số được phân cách bởi các dấu chấm phẩy. Ví dụ về SIP URIs: sip:hoang.danghuy@ims.hut.vn

Nguyễn Quang Dũng – Điện Tử 4– K50

Trang 42

nguyenduc@ims. và chúng ta đã thấy định dạng của một mô tả phiên.edu. Tuy nhiên. Các thực thể giao tiếp với SIPS RIs dùng TLS (Transport Layer Security) để bảo mật các bản tin của người dùng.hut sip:asims@hut. Ví dụ.vn. Bây giờ chúng ta xem xét SIP nhận ra vị trí của người dùng như thế nào. địa chỉ SIP URI của cô ấy là sip:asmith@ws1234.fet.daoxuan@ims.Smith@domain.com Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 43 . khi Alice đăng nhập tại nơi làm việc.com và khi Alice làm việc tại trường đại học thì địa chỉ SIP URI là sip:alice@pc12. người dùng có thể được nhận ra bằng SIP URI.com bất kể Alice đang ở đâu.fet.edu Bởi vậy.university. đây là URI công cộng của Alice hay còn được gọi là AoR (Address of Record).4 Định vị người dùng Mục đính chính của SIP là đưa ra một mô tả phiên tới người dùng ở vị trí hiện tại của họ. Ví dụ về SIPS URIs: sips:son.hut sips:hoang.dinhngoc@ims.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ sip:thien. SIP cung cấp tính linh động cá nhân tức là một người dùng sẽ có nhận dạng như nhau bất kể người đó đang ở đâu.company. Alice được nhận dạng bởi SIP URI tại sip:Alice.transport=tcp Thêm vào đó.vn 3.Smith@domain.hut.1. chúng ta cần phải có phương pháp ánh xạ tới địa chỉ công cộng của Alice sip:Alice.

Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ tới các địa chỉ URI hiện thời của cô ấy (tại nơi làm việc hoặc tại trường đại học).com như được chỉ ra trên hình 3-4.com. Nếu registrar dùng máy chủ vị trí thì nó cần tra cứu khi nó nhận được yêu cầu của Alice. Hình 3-10 : Alice đăng ký vị trí người dùng với tên miền domain.Smith@domain.com sẽ lưu trữ cơ chế ánh xạ giữa URI công cộng của Alice và vị trí hiện tại của cô ấy theo hai cách: nó có thể dùng cơ sở dữ liệu hoặc có thể tải lên cơ chế ánh xạ này tới máy chủ vị trí.com sẽ được quản lý bởi SIP registrar tại domain. Registrar quản lý các yêu cầu được gửi tới một domain. Chú ý rằng giao diện giữa registrar và máy chủ vị trí không dùng SIP mà dùng các giao thức khác. Alice sẽ đăng ký vị trí mới đó tại domain.2. Bất cứ lúc nào Alice đăng nhập tại một khu vực mới.1 SIP là gì Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 44 . Để làm được điều này.com registrar Khi tiếp nhận đăng ký registrar tại domain. 3. SIP đưa ra một thành phần mạng gọi là registrar của một domain. Vì vậy yêu cầu gửi tới sip:Alice.2 Cơ bản về SIP 3.

Như một phần của xác nhận. Giả sử một người dùng có định danh là A muốn thiết lập cuộc gọi với người dùng có định danh là B. và kết thúc một phiên giữa hai điểm đầu cuối. nó gửi một xác nhận lại cho người dùng A. Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 45 . Dưới đây là các bước cần thiết để thiết lập một cuộc gọi: • A mời B bắt đầu cuộc hội thoại. người dùng A và người dùng B có thể giao tiếp thông qua một thiết bị được gọi là tác nhân người dùng (User Agent). Một ví dụ khác là VoIP Phone. B cũng chỉ ra loại media mà nó hỗ trợ. một cuộc gọi nhiều bên. Một cách đơn giản để mô tả SIP là xem xét một mô hình sử dụng. chỉnh sửa. Nếu A và B hỗ trợ cùng một loại media. một loại điện thoại cho phép sử dụng VoIP (Voice over IP). • Khi B sẵn sàng chấp nhận lời mời. cuộc gọi sẽ được thiết lập giữa A và B. A sẽ chỉ ra loại media nào sẽ được hỗ trợ. và sau đó đánh giá lời mời. • A kiểm tra xác nhận mà nó nhận được từ B và quyết định xem liệu media hỗ trợ bởi A và B có giống nhau không. gửi đáp ứng trung gian tới người dùng A. SIP có thể được sử dụng để thiết lập một cuộc gọi giữa hai bên. Trong viễn thông.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ SIP là một giao thức báo hiệu thường được sử dụng để thiết lập. • B nhận lời mời. một chương trình phần mềm sử dụng để thiết lập cuộc gọi điện thoại qua Internet. hoặc một phiên multicast cho các cuộc gọi Internet. các cuộc gọi đa phương tiện và phân phối đa phương tiện. Một ví dụ về User Agent là một soft phone. Như một phần của lời mời.

SCTP như là các giao thức nền của lớp dưới. Ví dụ. SIP kế thừa các đặc tính quan trọng của HTTP. điều đó có nghĩa là nó hoạt động ở tầng ứng dụng và sử dụng các giao thức TCP. UDP. tương tự như HTTP.2 SIP liên hệ với HTTP như thế nào Như đã nói ở trên. Tuy nhiên SIP có rất nhiều điểm giống với HTTP. Nó chia sẻ nhiều đặc điểm quan trọng với HTTP và cũng chính vì vậy nhiều người thường thắc mắc liệu SIP có sử dụng HTTP như một giao thức nền? Câu trả lời là không. Nó thực hiện việc này bằng cách định nghĩa ra các phương thức yêu cầu (request).Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ Hình 3-11 : Các bước thiết lập một cuộc gọi SIP cung cấp một phương thức chuẩn để thực hiện các bước này. đáp ứng (response). 3.2. SIP cũng là một Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 46 . mã đáp ứng (response code) và các trường điều khiển đặc trưng cho báo hiệu và điều khiển cuộc gọi. Giao thức này được chuẩn hóa bởi IETF (Internet Engineering Task Force) theo RFC 3261 và hiện nay nó được chấp nhận rộng rãi như một chuẩn báo hiệu cho 3GPP (3 rd Generation Partnership Project) và như là một thành phần không thể thiếu trong kiến trúc IMS. SIP là một giao thức hoạt động ở cùng một tầng với HTTP.

SIP hỗ trợ các phương thức yêu cầu và mã đáp ứng sau: • REGISTER: sử dụng bởi client để đăng ký địa chỉ với máy chủ ứng dụng. được hiểu và được chấp nhận. Mã hồi đáp: • 1xx: thăm dò. SIP là một giao thức ngang hàng (peer-to-peer protocol). Đây là một điểm khác biệt giữa SIP và HTTP. Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 47 . Tuy nhiên. một điểm khác biệt quan trọng giữa HTTP và SIP là cơ chế yêu cầu – đáp ứng trong SIP là không đồng bộ -. mã đáp ứng và các trường điều khiển. Phương thức này chỉ được sử dụng với yêu cầu invite. Cũng giống như HTTP. SIP sử dụng cơ chế yêu cầu – đáp ứng (request – response mechanism) với các phương thức đặc trưng. máy chủ sẽ luôn luôn là máy chủ. Phần thân của bản tin này bao gồm một mô tả phiên mà người dùng dịch vụ đang được mời. Một ACK chỉ định một hành động đã được nhận thành công. • INVITE: chỉ ra rằng người dùng hay dịch vụ đang được mời tham gia vào một phiên. Điều này có nghĩa là người dùng cuối (User Agent) có thể hoạt động như một Server cũng như có thể hoạt động như một Client. yêu cầu SIP thường có thể gây ra một vài yêu cầu khác được tạo ra. • ACK: xác nhận rằng client nhận được đáp ứng cuối cùng của một bản tin invite. máy client thì sẽ luôn luôn là máy client. Trong HTTP. • OPTIONS: sử dụng để truy vấn máy chủ về khả năng của nó. Thực tế. • CANCEL: sử dụng để bỏ qua một yêu cầu đang chờ xử lý. • BYE: gửi một user client agent để chỉ định với máy chủ là nó muốn kết thuc cuộc gọi.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ giao thức dựa trên văn bản (text-based) và người dùng có khả năng đọc được.một yêu cầu không nhất thiết theo sau nó là một đáp ứng tương ứng.

SIP sử dụng SDP như là một phần tải trong bản tin của nó để thực hiện chức năng trao đổi khả năng giữa các người dùng.2. Giao thức mô tả phiên (SDP) là một định dạng cho việc mô tả định dạng media và loại media được dùng trong một phiên. • 6xx: lỗi toàn cục. • 5xx: lỗi máy chủ. nội dung của SDP có thể chỉ ra loại mã hóa hỗ trợ bởi user agent và giao thức sử dụng trao đổi thời gian thực (RTP). 3. • 4xx: lỗi client. Ví dụ.3 Bản tin SIP Cấu trúc của bản tin SIP: Hình 3-12: Cấu trúc bản tin SIP Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 48 .Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ • 3xx: chuyển hướng. Máy chủ thất bại trong việc hoàn thành một yêu cầu hợp lệ. Yêu cầu thêm các hành động khác để xử lý yêu cầu. Yêu cầu không thể hoàn thành ở bất cứ máy chủ nào. Yêu cầu có chứa cú pháp sai và không thể hoàn thành ở máy chủ.

4 Phiên giao dịch (Transaction) Mặc dù nói các bản tin SIP được gửi đi một cách độc lập qua mạng nhưng thực tế chúng thường được sắp xếp vào các transaction (giao dịch) bởi các user agent và một số kiểu proxy server nào đó. Có 3 thành phần quan trọng: • Dòng yêu cầu: chỉ ra phương thức yêu cầu.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ Hình trên chỉ ra cấu trúc thành phần của một bản tin SIP. Một transaction chứa thông tin yêu cầu và tất cả các thông tin phản hồi cho thông tin yêu cầu đó hoặc thậm chí nhiều hơn các thông tin phản hồi cuối (final response).2. Nếu như phản hồi cuối là kiểu 2xx thì bản tin ACK sẽ không được xem là một thành phần trong transaction. địa chỉ và phiên bản SIP. • Trường điều khiển: chỉ ra dữ liệu về phiên hay cuộc gọi được thiết lập hay kết thúc. Một transaction là một luồng các bản tin SIP được truyền đi một cách tuần tự giữa các phần tử mạng. 3. Lý do cho sự phân biệt này là sự quan trọng của tất cả các bản tin 200 OK. Nếu như vậy chúng ta có thể thấy rằng ở đây có sự cư sử không được công bằng – ACK được coi là một thành phần trong transaction với một lời từ chối ở phản hồi cuối. trong trường hợp này user agent phải lãnh Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 49 . Không những nó thiết lập một phiên mà bản tin 200 OK còn được sinh ra bởi các thực thể khi một proxy server chuyển hướng yêu cầu và tất cả các proxy server đó phải chuyển bản tin 200 OK về đến user agent. Do đó. Một transaction là một luồng bản tin SIP được truyền đi một cách tuần tự giữa các phần tử mạng. • Phần thân bản tin: cung cấp payload. trong khi nó lại không phải là một thành phần transaction khi được chấp nhận ở phản hồi cuối. SDP mô tả media của phiên. Do đó có thể nói giao thức SIP là một giao thức hỗ trợ transaction. Nếu một transaction được khởi tạo bởi bản tin yêu cầu INVITE thì transaction đó cũng bao gồm cả bản tin ACK nếu như phản hồi cuối không phải là kiểu 2xx.

Nếu như một transaction tồn tại thì trạng thái của nó sẽ được cập nhật từ bản tin đó. một thực thể stateful sẽ cố gắng kết nối yêu cầu (hoặc phản hồi) đó tới một transaction đã tồn tại sẵn. nó phải lấy thông tin xác định tính duy nhất của transaction (gọi là identifier) trong bản tin đó và so sánh với tất cả các identifier trong transaction mà nó lưu trữ. Nhưng chúng ta có thể thấy rằng cả hai transaction này có liên quan đến nhau và Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 50 . đó là một transaction bao gồm bản tin INVITE và các bản tin phải hồi. Các thực thể này tạo một trạng thái kết nối với một transaction được lưu trong bộ nhớ trong suốt khoảng thời gian diễn ra transaction.2. Để có khả năng làm được điều đó.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ trách nhiệm và truyền lại bản tin 200 OK cho đến khi chúng nhận được bản tin ACK. Hình 3-13: Transaction 3.5 Hội thoại (dialog) Ở trên chúng ta đã biết đến transaction. một transaction khác bao gồm bản tin BYE và thông tin phản hồi (200 OK) khi một phiên làm việc kết thúc. Các thực thể SIP có khái niệm về transaction được gọi là stateful. Khi có thông tin yêu cầu hay phản hồi đến. Một lưu ý khác nữa là chỉ có bản tin INVITE là được truyền lại.

Dialog thích hợp dễ dàng với việc sắp xếp tuần tự và định tuyến cho các bản tin SIP giữa các thiết bị cuối. nếu không các user agent sẽ xử lý nó như là các yêu cầu không được sắp xếp hoặc là sẽ gửi lại bản tin đó.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ cùng thuộc một hội thoại (dialog). Do đó cũng có thể gọi dialog là một tập tuần tự của các transaction. Hình 3-14 : Luồng cuộc gọi trong một hội thoại SIP Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 51 . thẻ from và thẻ to. Điều đó có nghĩa là chỉ có duy nhất một transaction hoạt động tại một thời điểm trong dialog. Hình vẽ dưới đây minh họa các bản tin truyền đi bên trong một dialog. Chỉ số Cseq phải được tăng tuần tự từng đơn vị cho mỗi bản tin trong một dialog. Các bản tin mà có cùng 3 identifier trên thì thuộc về cùng một dialog. số Cseq xác định một transaction bên trong một dialog bởi chúng ta đã nói ở trên là các yêu cầu và các thông tin được phản hồi của nó được gọi là một transaction. Trường điều khiển Cseq được dùng để sắp xếp thứ tự các bản tin trong cùng một dialog. Một dialog tồn tại trong một khoảng thời gian và nó là một khái niệm rất quan trọng đối với các user agent. Dialog được xác định bằng call-id. Một dialog đặc trưng cho mối quan hệ SIP ngang hàng giữa hai user agent. Trong thực tế.

bởi sau đó sẽ có bản tin yêu cầu BYE dùng để kết thúc dialog tạo ra bởi bản tin INVITE ở trên. Route và Contact Hình 3-9 mô tả luồng bản tin nơi proxy tại domain. Nhưng nếu user agent gửi một bản tin yêu cầu message. bản tin INVITE thiết lập một dialog. Các yêu cầu proxy để giữ nguyên đường dẫn bằng cách thêm một trường điều khiển Record-Route vào yêu cầu INVITE (2). đó là một yêu cầu không thiết lập bất cứ dialog nào. Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 52 . Nó cho phép biểu diễn rõ ràng.com giữ nguyên đường dẫn cho tất cả các yêu cầu gửi tới bên trong dialog. để chỉ ra rằng proxy tại domain. Bản tin BYE này được gửi bên trong dialog được thiết lập bởi bản tin INVITE. Lấy ví dụ. Alice nhận được trường điều khiển Record-Route cùng với URI của proxy trong bản tin yêu cầu INVITE (2).2. cả Bob và Alice sẽ chèn trường điều khiển Route vào trong các bản tin yêu cầu của họ.com cần được đi qua.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ Một vài bản tin dùng để thiết lập ra một dialog. Bản tin BYE (7) và (8) cho thấy các yêu cầu trong các hướng ngược nhau (ví dụ từ Alice tới Bob) sử dụng cùng cơ chế Route. 3. Điều đó được thực hiện một cách dễ dàng bởi user agent không lưu trạng thái của dialog. chi tiết mối quan hệ giữa các bản tin và còn dùng để gửi bản tin mà không liên quan đến các bản tin khác đến các bản tin nằm ngoài một dialog. và Bob nhận được nó trong bản tin hồi đáp 200 OK (4). Bản tin hồi đáp ACK (5) và (6) là một ví dụ về một yêu cầu với trường điều khiển Route được gửi từ Bob tới Alice. Khi đó bất cứ các bản tin theo sau bản tin đó (kể cả bản tin message) cũng được gửi đi một cách độc lập với bản tin trước đó.6 Trường điều khiển Record-Route. Tham số lr xuất hiện ở phần cuối của URI chỉ ra rằng proxy này là phù hợp với RFC 3261 (các proxy cũ hơn được sử dụng với một cơ chế định tuyến khác). Từ thời điểm này.

Route và Contact Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 53 .Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ Hình 3-15 : Cách sử dụng Record-Route.

các công nghệ phát triển dịch vụ và ứng dụng cũng hoàn toàn độc lập với mạng lõi IP bên dưới. Ý tưởng của NGN là sử dụng một mạng duy nhất (mạng IP) để cung cấp tất cả các dịch vụ trải dài từ thoại. Kiến trúc này cho phép truy cập và cải tiến mạng một cách độc lập mà không ảnh hưởng tới các mạng khác. Nằm trên tầng IP. mạng không dây cố định hoặc không dây di động trong khi chỉ có một mạng IP lõi cho tất cả các mạng. Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 54 . Hơn nữa. NGN thực sự là một mạng hội tụ cho tất cả các mạng đang tồn tại qua một mạng IP lõi tốc độ cao duy nhất và mỗi mạng có một gateway tại biên của mạng để tiếp xúc với các mạng khác. mạng internet cho các dịch vụ dữ liệu). Vì thế. dữ liệu. cách thức truy cập mạng có thể là truy cập qua DSL. không cần thiết cho các nhà phát triển phải điều chỉnh nhiều dịch vụ. một dịch vụ trong mạng NGN có thể ảnh hưởng tới một dịch vụ khác. các dịch vụ NGN có thể tương tác với nhau qua các bản tin báo hiệu SIP và qua các phiên điều khiển của IMS. Vì thế đòi hỏi cần phải quản lý dịch vụ nào được ưu tiên kích hoạt trước. Ví dụ. Điều này làm cho các dịch vụ và ứng dụng không bị ảnh hưởng từ các thay đổi thường xuyên của mạng. truyền thông đa phương tiện. Vấn đề tương tác dịch vụ xảy ra trong mạng NGN vì các nguyên nhân sau: 1. 2 dịch vụ NGN có thể được kích hoạt cùng lúc cùng bởi một bản tin SIP giống nhau trong cùng một phiên điều khiển. mạng cable để truyền video. Với cá ứng dụng hoàn toàn xây dựng trên lớp giao vận IP. Trong mạng NGN. Cable.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ 4 CHƯƠNG IV : QUẢN LÝ TƯƠNG TÁC DỊCH VỤ TRONG IMS Mạng NGN xây dựng dựa trên kiến trúc hoàn toàn IP để xây dựng các mạng viễn thông có chức năng đặc biệt phục vụ các dịch vụ riêng biệt (như mạng PSTN cho dịch vụ thoại. Tất cả các dịch vụ NGN cạnh tranh tài nguyên của mạng chia sẻ với nhau. Vì thế. 2. các dịch vụ trong NGN phần lớn xây dựng dựa trên giao thức SIP làm giao thức báo hiệu và IMS làm hệ thống điều khiển phiên.

Các release trước đó của 3GPP như Release 1. Trong chương này. SIP Application Server 2. đó là: • Khối SCSCF và tiêu chuẩn lọc Filter Criteria • Application Server và khối SCIM. một dịch vụ không trên IMS như dịch vụ lịch gọi có thể sử dụng một dịch vụ IMS khác như dịch vụ chuyển cuộc gọi để kích hoạt. khối SCSCF đảm nhiệm chức năng quản lý phiên cuộc gọi trong khi các dịch vụ có thể được triển khai trên Application Server qua 3 dạng.4. em xin giới thiệu các phương pháp hiện nay đang được áp dụng làm chức năng quản lý tương tác dịch vụ trong IMS. Giao tiếp với các OSA Application Server Sau đây em xin trình bày hai giải pháp quản lý tương tác dịch vụ trong IMS mà 3GPP đưa ra. Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 55 . Hơn nữa.7 đã hỗ trợ vài chức năng Service Broker thông qua hai khối chức năng trong IMS và các tương tác giữa chung.6.3. IM-SSF (IMS Service Switching Function) 3.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ 3. Ba dạng Application Server gồm: 1. Khối SCSCF giao tiếp với Application Server thông qua giao diện ISC(IP multimedia Service Control) được xây dựng trên ggiao thức SIP. có thể xảy ra trường hợp các dịch vụ NGN trên IMS sẽ tương tác với các dịch vụ NGN không trên IMS. Trong IMS.5.2. Ví dụ.1 Service Broker – khối quản lý tương tác dịch vụ trong IMS Tổ chức 3GPP hiện đã đưa ra kiến trúc Service Broker cho IMS trong Release 8 để giải quyết vấn đề tương tác dịch vụ. OSA – SCS. 4.

Khái niệm tiêu chuẩn lọc kế tiếp là S-CSCF sẽ đánh giá tiêu chuẩn lọc kế tiếp khi nó nhận được yêu cầu kế tiếp trong hộp thoại SIP.1.218 [20] có hai tiêu chuẩn lọc là: tiêu chuẩn lọc khởi tạo (IFC – Initial Filter Criteria) và tiêu chuẩn lọc kế tiếp (SFC – Subsequent Filter Criteria). Tiêu chuẩn lọc bao gồm một tập hợp thông tin liên quan đến người dùng giúp cho S-CSCF quyết định khi nào gọi máy chủ ứng dụng cung cấp dịch vụ. hoặc bất cứ yêu cầu nào tạo ra cuộc hội thoại hoặc được gửi ngoài các hộp thoại. máy chủ ứng dụng sẽ hủy yêu cầu và bỏ qua yêu cầu kế tiếp đó. S-CSCF không đánh giá tiêu chuẩn lọc khởi tạo khi nhận được yêu cầu PRACK. Ví dụ. NOTIFY. Tuy nhiên.1. kết quả của việc đánh giá tiêu chuẩn lọc kế tiếp có thể dẫn đến việc S-CSCF chuyển tiếp yêu cầu SIP kế tiếp đến một máy chủ ứng dụng. điều này trái ngược với thủ tục định tuyến cho yêu cầu kế tiếp ở trong một SIP proxy. Do đó. Theo tiêu chuẩn 3GPP TS 23.1 SCSCF và tiêu chuẩn lọc 4. Tiêu chuẩn lọc kế tiếp SFC vẫn còn nằm trên lý thuyết. UPDATE. INVITE.1. khi đó máy chủ ứng dụng vẫn chưa nhận được yêu cầu khởi tạo SIP để tạo hộp thoại SIP. Tiêu chuẩn lọc khởi tạo IFC có nhiệm vụ đánh giá các yêu cầu khởi tạo SIP và tạo ra các yêu cầu đơn. S-CSCF đánh giá tiêu chuẩn lọc khởi tạo khi nhận được yêu cầu SUBSCRIBE đầu tiên.1 Tiêu chuẩn lọc Tiêu chuẩn lọc là một trong những thành phần quan trọng nhất của thông tin người dùng được lưu trữ trên mạng vì chúng xác định loại dịch vụ nào sẽ cung cấp cho người sử dụng. OPTIONS. Từ đó dẫn đến việc không sử dụng tiêu chuẩn lọc kế tiếp. do nếu áp dụng tiêu chuẩn lọc kế tiếp SFC tại S-CSCF có thể sẽ gây ra xung đột với quy tắc định tuyến bản tin SIP cho các proxy. hoặc BYE do chúng luôn luôn được gửi như một phần của một hội thoại SIP đang tồn tại.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ 4. Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 56 . trong sự kiện một máy chủ ứng dụng nhận được yêu cầu kế tiếp này. Hơn nữa. Tuy nhiên chỉ có tiêu chuẩn lọc khởi tạo IFC là được sử dụng.

HSS lưu giữ tất cả dữ liệu liên quan tới người dùng trong một cấu trúc dữ liệu tên là User Profile.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ Tiêu chuẩn lọc duy nhất được triển khai là tiêu chuẩn lọc khởi tạo. User Profile chứa định danh riêng thuê bao mà user profile đó thuộc về và một hay nhiều service profile. Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 57 . Do tiêu chuẩn lọc kế tiếp không tồn tại nên thuật ngữ tiêu chuẩn lọc khởi tạo và tiêu chuẩn lọc là như nhau. Mỗi một service profile chứa một hay nhiều định danh công cộng thuê bao mà service profile đó thuộc về và không có hoặc nhiều tiêu chuẩn lọc. Hình 4-1 mô tả cấu trúc đơn giản cấp cao của user profile.

Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ Hình 4-16: Cấu trúc của User Profile Khi người dùng đăng ký với S-CSCF. Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 58 . Tiêu chuẩn lọc xác định các dịch vụ mà nó có thể áp dụng được để thu thập định danh công cộng thuê bao liệt kê trong “Service profile”. Vậy tiêu chuẩn lọc vẫn tồn tại trong S-SCSF tại thời điểm người dùng đăng ký. Cấu trúc dữ liệu của tiêu chuẩn lọc được thể hiện ở hình 4-2. S-CSCF liên lạc với HSS và tải user profile có chứa tiêu chuẩn lọc.

Sau khi thực thi nó. Trường Priority của tiêu chuẩn lọc là số duy nhất đối với các tiêu chuẩn lọc trong cùng Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 59 . Trường Priority xác định thứ tự của tiêu chuẩn lọc sẽ được đánh giá so với các tiêu chuẩn lọc còn lại trong cùng một “service profile”. ví dụ độ ưu tiên 1 là độ ưu tiên cao nhất. S-SCSF trước tiên sẽ chọn tiêu chuẩn lọc có độ ưu tiên cao. S-SCSF tiếp tục với tiêu chuẩn lọc tiếp theo có độ ưu tiên nhỏ hơn.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ Hình 4-17: Cấu trúc tiêu chuẩn lọc khởi tạo Trường đầu tiên trong cấu trúc tiêu chuẩn lọc là Priority.

Nếu không có Trigger Point thì các yêu cầu SIP được chuyển tiếp đến máy chủ ứng dụng vô điều kiện. Một điểm kích hoạt là tập hợp các bộ lọc riêng biệt được gọi là “ Service Point Triggers”. • Mô tả phiên (ví dụ. • Trường hợp phiên (ví dụ. Ví dụ. yêu cầu SIP có nguồn là một thuê bao được phục vụ gửi đến thuê bao đã đăng ký.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ một “service profile”. Sau trường Priority. • Sự có mặt hay vắng mặt của bất cứ trường điều khiển SIP (SIP header) nào.…). có thể không có hoặc có một Trigger Point (điểm kích hoạt). • Giá trị của Request-URI. • Trùng một phần hay toàn bộ nội dung của bất kỳ trường điều khiển SIP nào. số ưu tiên không cần thiết phải liền nhau. Trong một số trường hợp. Một Trigger Point là một biểu thức cần được đánh giá để xác định xem yêu cầu SIP có được chuyển tiếp đến máy chủ ứng dụng hay không.com) Trong ví dụ này có hai Service Point Trigger là Method = INVITE và RequestURI = sip:user@example. Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 60 . hoặc gửi đến thuê bao chưa đăng ký). Sevice Point Trigger cho phép ta truy nhập thông tin được lưu trữ chứa trong các trường khác nhau của yêu cầu SIP. trùng một phần hay toàn bộ bất kể một dòng SDP nào). OPTIONS.com. • Phương thức của yêu cầu SIP (ví dụ: INVITE. SUBSCRIBE. một Trigger Point có thể như sau: (Method = INVITE) AND (Request-URI = sip:user@example.

Các hành động có thể tiếp tục xử lý yêu cầu SIP hoặc ngừng xử lý. Các SPT có thể bao gồm: Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 61 . tiêu chuẩn lọc khởi tạo chứa AS SIP URI. Nguyên nhân là do các dữ liệu được thêm vào phần thân của yêu cầu SIP. Các tập hợp của tất cả các SPT liên quan tới một ứng dụng cụ thể được xác định trong tiêu chuẩn lọc Filter Criteria.228 [21]. Cuối cùng.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ Sau Trigger Points chứa một hay nhiều Service Point Triggers. Đây là địa chỉ của máy chủ ứng dụng sẽ nhận yêu cầu SIP nếu các điều kiện được mô tả trong các Trigger Point được thỏa mãn. Mẫu XML định nghĩa tiêu chuẩn lọc khởi tạo được mô tả trong 3GPP TS 29. vì IMSI có thể được sử dụng bởi IM-SSF. Vì vậy. Hành động này không được chấp nhận trong các SIP Proxy. Cách sử dụng trường này được giới hạn với các yêu cầu SIP REGISTER hoặc bất kỳ yêu cầu nào khác khi mà S-CSCF hoạt động như là một SIP User Agent Client. trong suốt với HSS và S-CSCF) mà máy chủ ứng dụng có thể cần để xử lý yêu cầu. trường hợp duy nhất sử dụng thông tin này là khi S-CSCF. user profile được mã hóa sử dụng ngôn ngữ đánh dấu mở rộng XML (Extensible Markup Language). Yêu cầu REGISTER đó có thể chứa Service Information (trong trường hợp máy chủ ứng dụng cần nó). Trường Default Handling chỉ hành động sẽ xảy ra nếu S-CSCF với lý do nào đó không thể liên lạc được với máy chủ ứng dụng. Các SPT (Service Point Triggers – điểm kích hoạt dịch vụ) là các điểm trong chuỗi báo hiệu SIP có thể làm SCSCF gửi hoặc chuyển tiếp các bản tin SIP tới các Server nhu SIP AS/OSA SCS/IM-SSF. Trường Service Information chứa dữ liệu trong suốt (ví dụ. tùy theo tiêu chuẩn lọc khởi tạo. hoạt động như một “SIP User Agent Client” tạo ra yêu cầu SIP REGISTER ở bên thứ ba tới máy chủ ứng dụng. với mục đích là truyền IMSI tới IM-SSF của thuê bao. Tiêu chuẩn lọc khởi tạo được truyền từ HSS đến S-SCSF thông qua bản tin Diameter.

SPT có thể dựa trên sự có mặt hay vắng mặt của một SIP Header nào đó với giá trị Header là tên của Header cần xét và giá trị Content là nội dung của header đó. Nói cách khác.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ Service Point Trigger ConditionNegated: boolean Group: list of integer RegistrationType: list of enumerated Request-URI SIP Method SIP Header Session Case Session Description RequestURI: string Method: string Header: string Content: string SessionCase: enumerated Line: string Content: string Hình 4-18: Thành phần của Service Point Trigger Như trên hình 4-3. • SIP Method: dùng để kiểm tra phương thức yêu cầu nào của bản tin SIP (có thể là REGISTER.edu. SUBSCRIBE. trường này được sử dụng bởi S-CSCF để xử lý dịch vụ cho phía nguồn.…). MESSAGE. các thành phần SPT có chức năng cụ thể như sau: • Request-URI: xác định tài nguyên mà yêu cầu được hướng đến (ví dụ: new@ims. Request-URI chứa thuộc tính RequestURI của bản tin SIP cần xác nhận. PUBLISH. Trường hợp nguồn là khi S-CSCF phục vụ cho phía khởi tạo phiên Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 62 . • Session Case: dùng để xác định chiều của bản tin là khởi tạo (originating) hay kết thúc (terminating) trong trường hợp người dùng có đăng ký (registered) hoặc chưa đăng ký (unregistered).hut. dịch vụ cho phía đích hay dịch vụ cho phía đích chưa đăng ký. • SIP Header: chứa thông tin liên quan đến yêu cầu. INVITE. Giá trị của Content được sử dụng như một mẫu để kiểm tra.vn).

Về mặt dữ liệu thì cấu trúc của tiêu chuẩn lọc khởi tạo được mã hóa dựa trên xml.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ (người gọi). Để làm được điều này thì nhà cung cấp phải làm cho SIP Method có giá trị là INVITE và Session Case có giá trị là terminating – unregistered.com) dành cho thuê bao chưa đăng ký. Nếu như không kết nối đến được máy chủ ứng dụng thì xử lý mặc định là dừng phiên lại. • Session Description: xác định SPT cho nội dung của trường SDP trong phần thân (body) của phương thức SIP.example. Mẫu kiểm tra có thể sử dụng ở đây. Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 63 . trường hợp đích là khi S-CSCF phục vụ cho phía cuối của phiên (người bị gọi). Dưới đây là một ví dụ tiêu chuẩn lọc khởi tạo cho dịch vụ hộp thư thoại tại máy chủ ứng dụng (sip:vmail@ims.

Nó mô tả đăng kí của người sử dụng tới một ứng dụng nào đó. Tiêu chuẩn lọc khởi tạo (iFC) là tiêu chuẩn lọc được lưu trữ trong HSS như một phần thông tin người sử dụng và được SCSCF tải về trong quá trình người sử dụng đăng kí.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ Hình 4-19: Ví dụ về User Profile Nhiều SPT có thể liên kết với nhau thông qua các quan hệ logic (như AND. Dưới đây là một ví dụ tiêu chuẩn lọc khởi tạo cho dịch vụ hộp thư thoại tại máy chủ ứng dụng (sip:vmail@ims.com) dành cho thuê bao chưa đăng ký. Về mặt dữ liệu thì cấu trúc của tiêu chuẩn lọc khởi tạo được mã hóa dựa trên xml. Để làm được điều này thì nhà cung cấp phải làm cho Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 64 .example. OR. NOT).

1. • Kiểm tra xem yêu cầu là yêu cầu đích (terminating) hay yêu cầu nguồn (originating). Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 65 . S-CSCF sẽ quyết định tiêu chuẩn lọc cho từng yêu cầu khởi tạo theo các bước sau: • Kiểm tra xem dịnh danh người dùng công cộng có bị chặn hay không? Nếu không thì tiếp tục.2 SCSCF sử dụng tiêu chuẩn lọc khởi tạo iFC để lựa chọn ứng dụng khởi tạo: Hình 4-20: SCSCF đóng vai trò Service Broker giữa các AS khác nhau SCSCF có thể nhận được nhiều tiêu chuẩn lọc trong tiêu chuẩn lọc khởi tạo. Tiêu chuẩn lọc khởi tạo được tải về S-CSCF trong quá trình đăng ký của thuê bao hoặc khi nhận được yêu cầu khởi tạo đích cho thuê bao chưa đăng ký. thứ tự ưu tiên sẽ được gán cho mỗi tiêu chuẩn.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ SIP Method có giá trị là INVITE và Session Case có giá trị là terminating – unregistered. Nếu như không kết nối đến được máy chủ ứng dụng thì xử lý mặc định là dừng phiên lại. Khối SCSCF sau đó sẽ lần lượt xử lý các tiêu chuẩn lọc này dựa trên thứ tự đó. Để cho phép SCSCF xử lí các tiêu chuẩn khác lọc khác nhau theo trình tự đúng.1. 4. Sau khi tải hồ sơ thuê bao từ HSS.

Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ • Chọn tiêu chuẩn lọc khởi tạo cho các trường hợp phiên cụ thể (nguồn. nó sẽ dừng kiểm tra và định tuyến yêu cầu theo giá trị của Request-URI. Nếu máy chủ ứng dụng được liên lạc không phản hồi. S-CSCF sẽ tiếp tục đánh giá các tiêu chuẩn lọc khởi tạo cho đến khi hết. Nếu trong tiêu chuẩn lọc khởi tạo không đề cập đến hành động mặc định. đích cho người dùng chưa đăng ký). S-CSCF sẽ gọi hành động mặc định được nêu ra trong tiêu chuẩn lọc khởi tạo: hoặc là dừng phiên hoặc là cho tiếp tục dựa trên các thông tin được cung cấp ở tiêu chuẩn lọc khởi tạo. • Kiểm tra xem yêu cầu có khớp với tiêu chuẩn lọc khởi tạo có độ ưu tiên cao nhất bằng cách so sánh hồ sơ dịch vụ với định danh người dùng công cộng trong yêu cầu: o Nếu yêu cầu khớp với tiêu chuẩn lọc khởi tạo. Ở đây tồn tại sự khác biệt rõ ràng giữa cách xử lý của S-CSCF với tiêu chuẩn lọc khởi tạo cho yêu cầu nguồn và đích. Để làm rõ hơn về hành vi của SCSCF khi sử dụng tiêu chuẩn lọc khởi tạo để lựa chọn ứng dụng. sau đó kiểm tra xem nó có khớp với tiêu chuẩn lọc khởi tạo có độ ưu tiên thấp hơn hay không? Nếu có áp dụng vào SIP Method nhận được từ liên lạc trước đó đến máy chủ ứng dụng. ta giả sử có 3 máy chủ ứng dụng (AS) đã thiết lập tiêu chuẩn lọc cho các bản tin yêu cầu mà thuê bao có tên Dung (xem bảng dưới) gửi. o Nếu không còn (hoặc không có) tiêu chuẩn lọc khởi tạo nào khớp. Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 66 . Trong trường hợp nguồn. nếu không liên lạc được với máy chủ ứng dụng thì S-CSCF sẽ cho cuộc gọi tiếp tục. em xin trình bày ví dụ sau: Trong ví dụ này. đích. Khi S-CSCF nhận ra rằng máy chủ ứng dụng đã thay đổi Request-URI trong trường hợp tiêu chuẩn lọc khởi tạo đích. o Nếu yêu cầu không khớp với tiêu chuẩn lọc khởi tạo có độ ưu tiên cao nhất thì tiếp tục kiểm tra cho đến khi nó khớp. thì S-CSCF sẽ chuyển yêu cầu theo các quyết định định tuyến. S-CSCF sẽ chuyển tiếp yêu cầu này đến máy chủ ứng dụng.

hut. vì trường P-Asserted-Identify trong bản tin này không mang URL có chứa số điện thoại của Dung.lr SCSCF trong miền của Dung sẽ kiểm tra từng tiêu chuẩn lọc này và so sánh với thông tin nhận được trong bản tin INVITE: INVITE sip:hanh@hut2.branch=9pctb Via:SIP/2.lr Tiêu chuẩn lọc 3 Terminating Sip:dung@hut.branch=8uetb Route:<sip:orig@scscf1.0/UDPscscf1.hut.com>.vn. Trường P-Asserted-Identify phù hợp với tiêu chuẩn lọc Phương thức SIP là INVITE Trang 67 Nguyễn Quang Dũng – Điện Tử 4– K50 .vn.lr> From:"YourBrother"<sip:dung@brother.0 Via:SIP/2.hut.vn> Privacy:None Ta thấy. tiêu chuẩn 1 không thích hợp.vn Tel:+44-123-456789 INVITE __ Sip:as2.vn.visited1.hut.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ Thành phần của tiêu chuẩn lọc SPT: session case SPT: public user identify Tiêu chuẩn lọc 1 Originating Tel:+44-123-456789 Tiêu chuẩn lọc 2 Originating Sip:dung@hut. Tiêu chuẩn 2 tương ứng vì : Bản tin INVITE nhận được từ thuê bao trong miền khởi tạo.com> P-Asserted-Identity:<sip:dung@hut.hut.vn.vn.vn.vn SPT: SIP method * Further SPT __ Application server Sip:as1.tag=veli To:"MySister"<sip:hanh@sister.lr SUBSCRIBE SIP header: event: pres Sip:as3.0/UDP[5555::1:2:3:4]:1357.branch=asctb Via:SIP/2. SCSCF biết điều này dựa vào trường Service-Route nó thiết lập cho thuê bao và thông tin nó lấy được từ trường Route trong bản tin.0/UDPpcscf1.vn SIP/2.

2 Service Capabilitiy Interaction Manager (SCIM) • Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 68 .Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ Tiếp theo đó. Hình 4-21: Định tuyến bản tin đến máy chủ ứng dụng 4.1. SCSCF gửi bản tin INVITE tới AS được chỉ ra trong tiêu chuẩn 2.

các iFC bao gồm thông tin địa chỉ của dịch vụ cần kích hoạt Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 69 . 3GPP mô tả chức năng của SCIM là để thực hiện nhiệm vụ quản lý sự tương tác giữa các dịch vụ. ISC.1 Khía cạnh thủ tục: • Trong mô hình SCIM. Sau đó. ta có thể chia chức năng của nó thành ba phần: 4.1. Vì vậy. qua các giao diện được mô tả như hình vẽ dưới đây: • Hình 4-23: Giao diện của SCIM với các thực thể mạng • SCIM giao tiếp với các thực thể trong IMS qua giao diện Sh.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ Hình 4-22: SCIM trong cấu trúc IMS • Trong kiến trúc IMS.1. Trong phần này. SCSCF download iFC phù hợp với user đó từ HSS.1.1 Thu thập user profile (SCIM/S-CSCF) • Khi một user đăng kí với SCSCF. Trong TS23. em xin trình bày một hướng tiếp cận SCIM theo hai khía cạnh cụ thể: • 1) Khía cạnh thủ tục (các chức năng và phương pháp giải quyết vấn đề tương tác dịch vụ) • 2) Khía cạnh cấu trúc (phương pháp thiết kế cấu trúc dịch vụ để thực hiện các chức năng của SCIM trong IMS.) 4.2. SCIM đóng vai trò là khối trung gian giữa tầng điều khiển và tầng dịch vụ.002.2. sự tương tác của các dịch vụ được dựa trên thông tin của người sử dụng và nhà cung cấp dịch vụ.

nền tảng tầng dịch vụ như vậy có thể tái sử dụng các dịch vụ khác để triển khai dịch vụ mới mà không cần phải xây dựng một khối dịch vụ mới. Ví dụ. thuê bao của dịch vụ game đa phương tiện sẽ kích hoạt dịch vụ Presence và yêu cầu phục vụ dịch vụ MMS của cùng thuê bao đó hoặc thuê bao khác cũng có thể kích hoạt cùng dịch vụ Presence đó.operator. • Như vậy. Vì vậy.1. khác domain hoặc giữa các nhà cung cấp khác nhau tạo ra sự phối hợp hoạt động giữa chúng.3 Tương tác với khối SCIM khác (SCIM/SCIM) • Sự tương tác giữa các khối SCIM trong cùng một domain. SCIM với vai trò là khối trung gian giữa tầng dịch vụ (bao gồm các AS) và tầng điều khiển (SCSCF) sẽ phải nhận biết khả năng của các dịch vụ được kích hoạt.2 Kích hoạt dịch vụ (SCIM/AS) • SCIM có thể kích hoạt đa dịch vụ để thực hiện một dịch vụ.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ (được ghi dưới dạng SIP-URI – ví dụ myintegratedservice@as.1. Vì thế các qui tắc trong tương tác dịch vụ phải được xác định để đưa ra thứ tự mà theo các dịch vụ phải được kích hoạt theo khi triển khai một AS.2. Tức là. SCIM phải có khả năng lưu trữ một mô hình chuẩn cho tất cả các dịch vụ mà nó có thể kích hoạt.1. Theo các qui tắc quản lí tương tác dịch vụ.2. Hơn nữa.1. Vì một AS có thể triển khai nhiều dịch vụ nên cách thức thực hiện dịch vụ sẽ phải tuân theo phương thức mà SCIM kích hoạt các AS. sự thỏa thuận giữa các nhà cung cấp dịch vụ có thể được miêu tả trong SCIM và cho phép nó kích hoạt các dịch vụ hoặc các AS trong các domain khác. 4. một hoặc nhiều dịch vụ khác nhau có thể được sử dụng chung một dịch vụ để hỗ trợ. Mô hình này sẽ phải mô tả rõ ràng cách thức triển khai một dịch vụ vào một tập hợp các dịch vụ phối hợp với nhau và các vấn đề về tương tác giữa chúng và end user.com) được áp dụng một cách lần lượt dựa vào thứ tự ưu tiên của nó. Tuân theo các qui tắc kích hoạt dịch vụ như vậy. 4. SCIM có thể xác định một vài qui tắc cho phép các SCSCF trao đổi giữa tầng điều khiển và tầng dịch vụ. Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 70 . các dịch vụ sẽ được khởi tạo thành công và sẽ tránh khỏi tình trạng xung đột .

Trong đó. Hai hình vẽ sau đây miêu tả mô hình triển khai dịch vụ Game đa phương tiện và dịch vụ tin nhắn đa phương tiện MMS theo cả hai dạng trên.1 SCIM được triển khai theo dạng (1) Hình 4-24: SCIM được triển khai theo dạng (1) Theo dạng này. dịch vụ Game đa phương tiện được tích hợp PS. MS và dịch vụ Conference. hướng xây dựng này dựa trên một thực thể quản lý trung tâm có khả năng giải quyết các vấn đề tương tác dịch vụ dựa trên a) thông Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 71 .2 Khía cạnh cấu trúc của SCIM: Cấu trúc của SCIM có thể có hai dạng: 1) Thiết kế SCIM như một AS trung gian giữa SCSCF và khối dịch vụ 2) Tích hợp các chức năng của SCIM vào SCSCF.2. Như vậy.1.2.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ 4. SCIM là một SIP server lấy user profile từ SCSCF và kích hoạt dịch vụ phù hợp theo mỗi user đã đăng kí tuân theo các qui tắc tương tắc dịch vụ đã xây dựng.1. dịch vụ MMS bao gồm dịch vụ Presence (PS) và dịch vụ tin nhắn (MS).2. 4.

Đồ án tốt nghiệp đại học

Khảo sát các phương pháp phối hợp và tương tác dịch vụ

tin từ user profile liên quan đến AS được kích hoạt và b) cách thức các dịch vụ được tích hợp để xây dựng một AS. Hiện nay, miền dịch vụ đang được phát triển một cách rất nhanh. Vì vậy, việc quản lý tương tác dịch vụ một cách tập trung trong mạng sẽ không hiệu quả do các vấn đề như tắc nghẽn, tính mở rộng của mạng, yêu cầu mềm dẻo của các dịch vụ mới. Mô hình này đã được 3GPP chọn làm mô hình chính thức để phát triển SCIM. Tuy nhiên, tổ chức này vẫn chưa chỉ ra cách thức xây dựng một cách cụ thể. 4.1.2.2.2 SCIM được triển khai theo dạng (2)

Hình 4-25 : SCIM được triển khai theo dạng (2) Trong mô hình này, các chức năng của SCIM được tích hợp như các API trên SCSCF. Các API này điều khiển các phiên truyền thông tới các dịch vụ giống với mô hình (1) bằng việc sử dụng các qui tắc tương tác dịch vụ đã được xác định trước. Nhưng trái ngược với mô hình (1), trong mô hình này, mỗi SCSCF được tham gia vào việc quản lý tương tác giữa các khối dịch vụ và vì thế thay vì phải triển khai SCIM như một khối trung tâm đưa ra các quyết định, các SCSCF có thể đảm nhận vai trò này.

Nguyễn Quang Dũng – Điện Tử 4– K50

Trang 72

Đồ án tốt nghiệp đại học

Khảo sát các phương pháp phối hợp và tương tác dịch vụ

Hơn nữa, sự hợp tác và phối hợp giữa các SCSCF mà bao gồm cả chức năng của SCIM có thể cung cấp một giải pháp toàn diện giải quyết vấn để quản lý tương tác dịch vụ. Vì mỗi SCSCF đã thu thập user profile từ các thuê bao của nó trong khi họ thực hiện việc đăng kí, nên giao diện giữa SCIM và SCSCF theo mô hình này sẽ ít phức tạp hơn mô hình (1). Một lợi ích khác của mô hình (2) là sự quản lý một cách phân tán làm giảm vấn đề bottlenecks trong mạng. Cuối cùng, mô hình này có tính khả thi và chống lỗi cao hơn mô hình (1) vì nếu lỗi xảy ra tại mỗi SCSCF sẽ ít nghiêm trọng hơn lỗi xảy ra tại một khối SCIM mà quản lý các tương tác liên quan đến nhiều SCSCF.

4.2 Distributed Feature Composition – architecture routing algorithm (DFC-AR):
Các tiêu chuẩn trong Sip Servlet đã cho phép chúng ta có thể phát triển các ứng dụng SIP bằng API quen thuộc của Java, và với phiên bản 1.1, nó đã tiêu chuẩn hóa việc làm thế nào nhiều ứng dụng SIP được tạo ra và kích hoạt để phục vụ trong lĩnh vực truyền thông. Công nghệ này thúc đẩy việc tạo ra các phần mềm có tính mô-đun và có thể tái sử dụng, và nó cũng trợ giúp việc quản lý tương tác trong hệ thống. Cốt lõi của phiên bản Sip Servlet 1.1 là khối Application Router – khối điều phối ứng dụng, đóng vai trò lựa chọn ứng dụng để phục vụ các bản tin yêu cầu SIP. Phần này miêu tả sự triển khai một khối điều phối ứng dụng dựa trên DFC-AR. DFC-AR được thiết kế để một cách đơn giản vì thế nó có thể là một ví dụ tốt để triển khai, và nó cũng rất hiệu quả khi triển khai trong các ứng dụng VoIP thực tế. DFC-AR được giới thiệu trong tài liệu Sip Servlet 1.1 JSR289 của Sun.

4.2.1 Giới thiệu về hỗn hợp ứng dụng và kiến trúc DFC:
4.2.1.1 Sự hỗn hợp của các úng dụng Sip Servlet:
Các ứng dụng triển khai trên Sip servlet cung cấp các đặc điểm cho người dùng khi họ sử dụng các dịch vụ viễn thông. Sự hỗn hợp ứng dụng xảy ra khi hai hoặc nhiều ứng dụng được gộp lại để cung cấp một dịch vụ hoàn thiện và phức tạp hơn cho người dùng.

Nguyễn Quang Dũng – Điện Tử 4– K50

Trang 73

Đồ án tốt nghiệp đại học

Khảo sát các phương pháp phối hợp và tương tác dịch vụ

Các ứng dụng riêng biệt tham gia trong cùng một phiên truyền thông cần phải có khả năng kết hợp các chức năng của chúng theo một cách dễ hiểu và kiểm soát được. Điều này rất quan trọng khi muốn phân tích và quản lý xung đột một cách dễ dàng. Sip servlet 1.0 hỗ trợ hỗn hợp ứng dụng tại tầng báo hiệu SIP. Khi container nhận một bản tin Sip request lần đầu tiên, nó lựa chọn ứng dụng để khởi tạo. Vì mỗi ứng dụng đã được khỏi tạo theo yêu cầu, ứng dụng khác có thể được khởi tạo theo, vì vậy tạo nên một chuỗi các ứng dụng. Mỗi ứng dụng đã khởi tạo hoạt động trong một môi trường như thể nó là ứng dụng duy nhất có thể gửi và nhận các bản tin request và response, mặc dù trong thực tế sự trao đổi các bản tin có thể xảy ra theo chuỗi (lên hoặc xuống) với các ứng dụng khác. Hình 4-11(a) miêu tả sự hỗn hợp ứng dụng trong các containers SIP servlet. SSAPI 1.1 tiêu chuẩn hóa rõ ràng hơn việc xử lý hỗn hợp dịch vụ, và nó giới thiệu một thành phần mới được gọi là application router (AR). Khối này chịu trách nhiệm lựa chọn ứng dụng và gồm các khái niệm mới như miền định tuyến và hướng định tuyến (routing regions, routing directives). Nó được xây dựng dựa trên cấu trúc DFC:

. Hình 4-26: Hỗn hợp ứng dụng trong các container

Nguyễn Quang Dũng – Điện Tử 4– K50

Trang 74

SSAPI-1. ví dụ như các ứng dụng nằm gần với thuê bao hơn sẽ có thứ tự ưu tiên cao hơn.2 Cấu trúc DFC: DFC là một cấu trúc ảo được thiết kế cho để xử lý các ứng dụng hỗn hợp. một phiên truyền thông bao gồm người gọi và người bị gọi. Hệ thống DFC được container cung cấp cho: a) Danh sách các địa chỉ b) Danh sách các khối ứng dụng (feature boxes) c) Thứ tự ưu tiên cùa các khối ứng dụng trong mỗi miền d) Danh sách các khối ứng dụng mà mỗi thuê bao đăng kí trong mỗi miền Bộ định tuyến . các chuyên gia đã giới thiệu các khái niệm về DFC trong SSAPI-1. và các khối ứng dụng (feature boxes) mà các thuê bao tại địa chỉ nguồn đã đăng kí sẽ được kích hoạt trước. So sánh Hình 4-11(a) và 4-11(b). và cũng dựa trên kinh nghiệm sử dụng DFC trong viễn thông. sau đó là các khối ứng dụng mà các thuê bao ở địa chỉ đích đăng kí. và nó cũng không yêu cầu cụ thể phương pháp sử dụng thuật toán định tuyến DFC. Hình 4-11(b) mô tả một cách sắp xếp các khối ứng dụng. Vì nguyên nhân này. Thông thường. Trong đó.1. router. tuân theo một thuật toán rõ ràng để lựa chọn khối ứng dụng tiếp theo được kích hoạt dựa trên địa chỉ nguồn và đích. mỗi khối gồm nhiều đặc tính ứng dụng được liên kết với nhau thành một chuỗi.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ 4.1 có tính mềm dẻo và tổng quát. Các đăng ký ứng dụng hoàn toàn được dựa trên các địa chỉ này.2. và trong mỗi cuộc gọi. phân tích và quản lý tương tác.1. Thứ tự của các ứng dụng (feature) trong mỗi miền là cực kì quan trọng. Nó được thiết kế dựa trên cấu trúc pipleline trong kĩ thuật phần mềm. Các nhà phát triển ứng dụng SIP servlet có thể chọn bất kì thuật toán nào để triển khai khối application router của riêng họ. ta có thể dễ dàng thấy điểm giống nhau giữa hỗn hợp ứng dụng trông môi trường SIP servlet và cấu trúc DFC. nó sẽ được xác lập địa chỉ nguồn và đích. vì thế DFC xác định khu vực nguồn và đích. Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 75 . là một thực thể logic.

Như vậy. 4. Một regular expression được viết bằng ngôn ngữ hình thức (formal language) mà máy tính có thể thông dịch được bằng một chương trình kiểm tra kí tự và xác định các thành phần tương ứng với các thủ tục định trước. việc triển khai AR phải đơn giản đối với các nhà phát triển ứng dụng. Tính mềm dẻo khi thiết kế DFC AR đạt được hầu hết là do sử dụng điểm mạnh của kĩ thuật Regular Expression làm phương pháp để xác định ứng dụng. Thiết kế được đơn giản hóa bằng cách cho phép tùy chỉnh AR cố định trong một file XML duy nhất.1 Tính đơn giản Đơn giản là mục tiêu chính khi thiết kế DFC AR. là một phương pháp đơn giản và mềm dẻo để so sánh các chuỗi kí tự.2. Hơn nữa.2. các chữ cái.2 Tính mềm dẻo: Mục tiêu thiết kế AR thứ hai là đảm bảo nó phải có tính mềm dẻo. Đây là chức năng mà thuật toán AR cần có để hoạt động hiệu quả.1.2 Mục tiêu thiết kế: Có vài tiêu chuẩn quan trọng khi thiết kế DFC Application Router. Bằng cách cố định thông tin địa chỉ chỉ là URI. Tính đơn giản còn đạt được bằng cách “code nóng” (hard coding) thông tin địa chỉ vào các bản tin SIP khởi tạo. Đó là: 4. Regular expression được sử dụng trong rất nhiều chương trình soạn thảo và Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 76 .2. Regular Expression: còn được viết là regex hoặc regexp. từ hoặc một phần chữ cái trong một từ. không cần phải tự động thay đổi AR theo thời điểm hiện tại. Điều này đã hỗ trợ khả năng lựa chọn ứng dụng nào cần kích hoạt trong một phiên truyền thông cho AR một cách rất hữu dụng. có thể dễ dàng so sánh sự khác nhau giữa 2 địa chỉ.2. để dễ dàng hiểu được phương pháp kết hợp các ứng dụng SIP servlet. không có sự phụ thuộc nào vào các cơ sở dữ liệu ngoài hay các bộ lưu trữ dữ liệu khác. Tùy chỉnh AR cố định có nghĩa là.2. Điều này đã được đưa ra khi triển khai khối application router mặc định trong SSAPI-1.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ 4. việc thiết kế đòi hỏi tính đơn giản và dễ triển khai trên các nền tảng (platforms) khác nhau là rất quan trọng.

2. ứng dụng có tính ưu tiên càng cao càng nằm gần hơn với các điểm đầu cuối. thứ tự ưu tiên giữa các ứng dụng chỉ mang tính một phần chứ không phải là toàn bộ các ứng dụng. Không phải tất cả các ứng dụng được triển khai phải có tên trong danh sách trong file tùy chỉnh XML. Application Router sử dụng các quan hệ ưu tiên giữa các ứng dụng và thông tin đăng kí để quyết định các ứng dụng nào được kích hoạt sau mỗi bản tin SIP khởi tạo.2.1. 4.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ ngôn ngữ lập trình để tìm kiếm và thao tác với văn bản dựa trên mẫu có sẵn. originating. khởi tạo hoặc kết thúc (routing.3. tệp tùy chỉnh cho phép người phát triển thiết lập thứ tự giữa các ứng dụng.3 Hoạt động của DFC Application Router Theo tài liệu chi tiết về DFC AR trong SSAPI 1.1. Sở dĩ như vậy là bởi vì một vài ứng dụng không có bất kì mối quan hệ cần ưu tiên nào với các ứng dụng khác. Ruby. Ví dụ. Vi gần giống với độ ưu tiên của các thuê bao. Tcl là các ngôn ngữ lập trình sử dụng phương pháp này.3. Ví dụ về tính ưu tiên trong DFC-AR: <precedence> <terminating-region> Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 77 .2. Các dữ liệu này sẽ tạo thành thông tin mà AR cần để định tuyến các bản tin SIP tới các ứng dụng SIP servlet. các ứng dụng trong miền khởi tạo (originating region) có tính ưu tiên cao hơn sẽ được kích hoạt trước các ứng dụng có tính ưu tiên thấp hơn trong khi các ứng dụng trong miền kết thúc (terminating region) có tính ưu tiên cao hơn sẽ được khởi tạo sau các ứng dụng có tính ưu tiên thấp hơn. 4. Tên ứng dụng nằm càng cao trên danh sách thì có tính ưu tiên càng cao. Perl. terminating). Nó có nghĩa là. 4. Người phát triển liệt kê tên các ứng dụng.1 Tính ưu tiên: (precedence) Trong mỗi miền định tuyến.1 Dữ liệu tùy chỉnh (Configuration Data) DFC-AR sử dụng một file XML cố định để lưu trữ các quan hệ ưu tiên và thông tin đăng kí. Như vậy. ứng dụng call logging chỉ đơn giản được kích hoạt tại bất kì vị trí nào trong chuỗi các ứng dụng được kích hoạt.

Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 78 . Nó mô tả rằng. Một đăng kí bao gồm một hoặc nhiều thủ tục regular expression trong JAVA kết hợp với một hoặc nhiều tên ứng dụng. có thể có nhiều ứng dụng được kích hoạt để xử lí bản tin đó.2. 4. DFC-AR kiểm tra các mô tả này trong thông tin đăng kí để so sánh với trường địa chỉ được lọc ra từ bản tin SIP khởi tạo. Địa chỉ của miền kết thúc (terminating) là trường Request-URI trong bản tin SIP khởi tạo.2 Subscriptions: Các đăng kí với DFC-AR được mô tả trong cùng một file XML tùy chỉnh trong một hoặc nhiều phần tham chiếu trong file này. bao gồm cả phần tên hiển thị (display-name).1. nên khi thông tin mô tả ứng với một bản tin SIP.3.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ <ordering> <app-name>app4</app-name> <app-name>app3</app-name> </ordering> </terminating-region> <originating-region> <ordering> <app-name>app1</app-name> <app-name>app2</app-name> </ordering> </originating-region> </precedence> Đây là một phần dữ liệu trong file tùy chỉnh AR. Do có thể có nhiều thông tin đăng kí và nhiều ứng dụng được liệt kê trong file tùy chỉnh. ứng dụng app1 phải được kích hoạt trước ứng dụng app2 trong miền khởi tạo (originating region) và ứng dụng app3 được kích hoạt trước ứng dụng app4 trong miền kết thúc (terminating region). Địa chỉ của miền khởi tạo được lấy ra từ trường From. Sự lựa chọn các ứng dụng được khởi tạo để xử lý bản tin SIP được điều khiển bằng thông tin đăng kí tương ứng với bản tin SIP đó.

*<sip:alice@. Sau đó. AR thêm vào trường app trong trường Request-URI với giá trị “oriapp”.*</address-pattern> <app-name>origapp</app-name> </mapping> </originating-region-mapping> Thông tin miền kết thúc trong subscripton được mô tả dựa trên địa chỉ URI của Bob sao cho bản tin khởi tạo được định tuyến tới ứng dụng appterm: <terminating-region-mapping> <mapping> <address-pattern>sip:bob@.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ Ta xem xét ví dụ sau về Subscription trong AR: AR muốn định tuyến bản tin SIP của người gọi Alice có địa chỉ SIP là “Alice” sip:alice@foo. Để làm được điều này.2 Thông tin lưu trữ trạng thái (Stored State Information): DFC-AR cần lưu trữ thông tin trạng thái về một quá trình khởi tạo cho tới quá trình tiếp theo trong cùng một phiên làm việc.3. Thông tin trạng thái gồm có: Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 79 .com tới ứng dụng apporig. Thông tin miền khởi tạo trong subscription: <originating-region-mapping> <mapping> <address-pattern>.*</address-pattern> <app-name>termapp</app-name> </mapping> </terminating-region-mapping> 4.com. bản tin được định tuyến tới ứng dụng appterm với người bị gọi là Bob. Khi dịa chỉ Sip trong trường From của bản tin khớp với địa chỉ mà ta đã mô tả. ta cần mô tả trường <originating-region-mapping> trong subscription dựa trên địa chỉ SIP của Alice để bản tin khởi tạo được định tuyến tới ứng dụng apporig. có địa chỉ SIP URI là sip:bob@foo. Nó lưu trữ thông tin bằng một chuỗi kí tự và cung cấp cho container.2.

tìm ra ứng dụng được kích hoạt cuối cùng và kích hoạt ứng dụng tiếp theo trong danh sách.1 Địa chỉ ảnh hưởng tới quá trình kích hoạt ứng dụng cuối cùng: Nhờ địa chỉ này. 4. và các thông tin lưu trữ trạng thái từ lần kích hoạt trước đó. Chức năng này của AR được mô tả như sau. Ứng dụng đầu tiên trong danh sách định tuyến là ứng dụng được kích hoạt gần nhất để xử lý bản tin SIP.2. Và sau mỗi lần kích hoạt ứng dụng. nó trả về cho container tên ứng dụng tiếp theo. khối AR chỉ cần tính toán lại toàn bộ danh sách định tuyến.2.2.2 Danh sách định tuyến: Đây là danh sách thứ tự các ứng dụng được khởi tạo nếu địa chỉ liên quan trong bản tin SIP không bị thay đổi. Bản tin đó bao gồm các thông tin yêu cầu dịch vụ.2. hướng định tuyến (routing directive). thì DFC-AR sẽ Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 80 . 4. DFC-AR phải tính toán lại danh sách định tuyến dựa trên thông tin về ứng dụng cuối cùng được kích hoạt. mà DFC-AR lại xác định tất cả các ứng dụng trong miền khởi tạo đã được kích hoạt. Nào DFC-AR trước đó chưa nhận được bản tin khởi tạo này lần nào. DFC-AR có thể xác định ứng dụng có thay đổi địa chỉ khi chuyển tiếp các bản tin hay không để tính toán ra danh sách định tuyến mới. Nếu các thông số của miền định tuyến được container gửi cho DFC-AR được thiết lập là miền khởi tạo.2.3.1 Xác định miền định tuyến: Vì các thông tin đăng kí được xác định trong miền định tuyến.1 đã đề nghị. miền định tuyến (routing region). Thông tin này cần thiết khi một ứng dụng thay đổi hướng bản tin thành dạng REVERSE và các ứng dụng còn lại được kích hoạt để xử lý bản tin SIP đảo chiều này phải được tính toán lại. Trong trường hợp này. nó gửi bản tin này tới AR. 4.3. Sau khi AR lựa chọn ứng dụng. địa chỉ thuê bao và thông tin trạng thái mới. gồm cả miền khởi tạo và miền kết thúc.3.3 Hoạt động của khối DFC Application Router: Khi container nhận được bản tin khởi tạo. miền định tuyến mới.2.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ 4.3. Phần còn lại của danh sách trong phần thông tin trạng thái được tối ưu hóa. nó sẽ xác định miền định tuyến ở đây là miền khởi tạo nhu trong SSAPI-1. khối DFC-AR đầu tiên phải xác định nó đang hoạt động trong miền định tuyến nào.3.

2. Với trường hợp hướng định tuyến có dạng REVERSE. DFC-AR kiểm tra hướng định tuyến. Nếu danh sách định tuyến rỗng. nó muốn quá trịnh định tuyến xử lý trong miền định tuyến hiện tại. Hướng định tuyến có thể có một trong ba giá trị: {NEW. DFC-AR phải đảo ngược hướng cuộc gọi trong chuỗi ứng dụng. Tuy nhiên. Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 81 . DFC-AR xác định địa chỉ có bị thay đổi hay không bằng cách so sánh địa chỉ hiện tại trong bản tin SIP với địa chỉ trong trường thông tin trạng thái của lần kích hoạt cuối cùng. DFC-AR hiện nay chưa sử dụng miền định tuyến tự nhiên (neutral routing region). DFCAR chuyển miền định tuyến từ miền khởi tạo sang kết thúc hoặc ngược lại. DFC-AR phải thực hiện thuật toán so sánh với thông tin đăng kí để xây dựng danh sách định tuyến mới.3. DFC-AR xây dựng danh sách định tuyến mới sử dụng thuật toaans trung tâm (core algorithm). DFC-AR phải xây dựng danh sách định tuyến mới sử dụng địa chỉ mới. DFC-AR quyết định miền định tuyến là miền kết thúc (cả khi đang hoạt động trong miền khởi tạo) hoặc nó chỉ đơn giản trả về tên ứng dụng có giá trị null cho container. DFC-AR bỏ qua tham số “transport” và “tag” trong trường SIP URI. Khi hướng có giá trị NEW. nghĩa là không có ứng dụng nào phải kích hoạt cho bản tin này. Hướng định tuyến được lấy ra từ ứng dụng cuối cùng được kích hoạt. Với cách so sánh địa chỉ như vậy. REVERSE}. Sử dụng địa chỉ phù hợp cho miền định tuyến mới. Khi hướng định tuyến có giá trị CONTINUE. tên ứng dụng đầu tiên trong danh sách được gửi trả về cho container. DFC-AR phải xác định xem danh sách định tuyến có cần xây dựng lại hay không.3.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ xác định miền đó là miền kết thúc. Nếu danh sách định tuyến sau khi tính toán ra không trống. Nếu trường địa chỉ bị thay đổi. đầu tiên. danh sách định tuyến được giữ nguyền và ứng dụng tiếp theo trong danh sách được kích hoạt. Để đảo bản tin yêu cầu. ứng dụng cuối cùng chỉ ra rằng. Nếu trường địa chỉ trong bản tin SIP không bị ứng dụng cuối cùng thay đổi. Trong trường hợp này.2 Kiểm tra hướng định tuyến: Khi miền hoạt động đã được xác định. 4. CONTINUE.

nó thực hiện theo qui trình sau: 1.2. Ứng dụng đầu tiên trong danh sách sẽ được container kích hoạt để xử lý bản tin khởi tạo nhận được. đưa tên tất cả các ứng dụng trong đó vào danh sách tên các ứng dụng có thể phải kích hoạt vào tập định tuyến. 4. . Nếu địa chỉ vừa được lấy ra từ bản tin SIP tương ứng với mô tả trong thông tin đăng kí. Như vậy. danh sách định tuyến có được phải là danh sách các ứng dụng hoàn chỉnh để kích hoạt. lọc địa chỉ từ bản tin SIP.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ hướng định tuyến có giá trị REVERSE có nghĩa là.servlet.ar Interface: Public interface SipApplicationRouter Lớp giao tiếp này xác định API giữa container và AR Các phương thức trong lớp: Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 82 . Dựa trên miền định tuyến. Loại bỏ tên các ứng dụng giống nhau nếu bất kì tên ứng dụng nào xuất hiện nhiều lần trong tập định tuyến.4 DFC-AR API: Class: javax.sip. 3.2. Sau khi tính toán. 2. 4. 4.3. khối DFC-AR phải tính toán phần còn lại của danh sách định tuyến mà chỉ gồm tên các ứng dụng xuất hiện sau ứng dụng cuối cùng được kích hoạt (tên ứng dụng cuối cùng được ghi đầu tiên trong danh sách định tuyến lưu trong thông tin trạng thái). chỉ các ứng dụng xuất hiện sau ứng dụng được kích hoạt cuối cùng mới được kích hoạt để xử lý bản tin đảo chiều (reversed request).3 Thuật toán trung tâm: xây dựng danh sách định tuyến Khi DFC-AR phải xây dựng danh sách định tuyến cho một bản tin khởi tạo.3. sắp xếp tên ứng dụng theo đúng thứ tự đã định sẵn. Kiểm tra một cách lần lượt mỗi đăng kí trong miền định tuyến hiện tại. sử dụng phần thông tin về thứ tự ưu tiên trong file tùy chỉnh. Sắp xếp tập định tuyến.

l ang.util.util. java.Serializable stateInfo) Container gọi phương thức này khi một servlet gửi đi hoặc proxy một request SipServletRequest khởi tạo void Init() Khởi tạo SipApplicationRouter void init(java.String> newlyDeployedApplication Names) Container khai báo với AR các ứng dụng đã triển khai Void applicationUndeployed(java. Parameters: (tham số) properties – đặc tính khởi tạo AR Throws: java. Phương thức init: Hàm gọi phương thức: void init() Khởi tạo SipApplicationRouter.String> undeployedApplicationN ames) Container khai báo với AR các ứng dụng chưa triển khai void Destroy() Container gọi phương thức này khi nó dừng sử dụng AR SipApplicationRouterInfo getNextApplication(SipServletRequest initialR equest.util. SipApplicationRoutingRegion region.lang. Chỉ được gọi một lần.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ void applicationDeployed(java. 1.Properties properties) Khởi tạo SipApplicationRouter kèm các đặc tính khởi tạo.lang.List<java.util. Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 83 . Phương thức này được SIP container gọi ra. SipApplicationRoutingDirective directive. Throws: java.IllegalStateException – gọi ra nếu muốn khởi tạo nhiều lần. 2.Properties properties) Khởi tạo SipApplicationRouter và truyền vào các đặc tính khởi tạo. Phương thức init kèm đặc tinh: Hàm gọi phương thức: void init(java. Phương thức nayd được gọi ra bởi SIP container và nó chỉ được gọi một lần duy nhất. SipTargetedRequestInfo targetedRequestInfo.lang.io.IllegalStateException – gọi ra nếu muốn khởi tạo nhiều lần.List<java .

lang.List<java. Phương thức destroy(): Hàm gọi: void destroy() Container gọi phương thức này khi nó kết thúc sử dụng AR. SipTargetedRequestInfo targetRequestInfo. Request không bị AR thay đổi. SipApplicationRoutingDirective directive. SipApplicationRoutingRegion region. Phương thức applicationDeployed(): Hàm gọi: void applicationDeployed(java.util.lang. Tham số: initialRequest – request khởi tạo mà vì nó. Tham số: undeployedApplicationNames – danh sách tên gọi các ứng dụng chưa triển khai.util.io.List<java.Serializable stateInfo) Phương thức này được gọi ra khi một servlet gửi đi hoặc proxy một request SipServletRequest khởi tạo. 6. 4. Phương thức applicationUndeployed(): Hàm gọi: void applicationUndeployed(java. region – là miền mà quá trình lựa chọn ứng dụng diễn ra Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 84 .String> newlyDeployedApplicationNames). AR trả lại một tập thông tin gồm nextApplicationName. Phương thức getNextApplication(): Hàm gọi: SipApplicationRouterInfo getNextApplication(SipServletRequest initialRequest.stateInfo. subscriberURI.java.region.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ 3.String> undeployedApplicationNames) Container thông báo cho AR các ứng dụng chưa triển khai. container cần tiến hành lựa chọn ứng dụng. Container thông báo cho AR các ứng dụng đã triển khai. Tham số: newlyDeployedApplicationNames – danh sách tên các ứng dụng 5.

CF (lowest) Subscriptions: Originating: . đăng kí 3 ứng dụng Terminating: sip:.lang. Nếu không có ứng dụng nào được triển khai. đối tượng này đưa ra dạng của request (ENCODED_URI.5 Các ví dụ: Trong phần này. - Throws: java. hướng có dạng NEW. File tùy chỉnh bao gồm: Precedence: Originating: (highest) CW. đăng kí 3 ứng dụng Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 85 . Call Waiting (CW). Nếu request nhận được là từ bên ngoài.. em xin trình bày ba ví dụ mô tả hoạt động của DFC-AR. giả sử ta có một hệ thống gồm 4 ứng dụng: Outbound Call Screening (OCS). Trong cả 3 ví dụ. CW.*sip:.IllegalStateException – nếu AR vẫn chưa được khởi tạo 4.* OCS.* CW. TargetedRequestInfo – nếu initialRequest là request mục tiêu. 3-way Call (3WC). stateInfo – thông tin trạng thái mà AR gửi trả khi nó được kích hoạt để xử lý request trước đó.NullPointerException – nếu initialRequest là null java. 3WC. OCS (lowest) Terminating: (highest) CW. 3WC. phương thức này trả về kết quả null. Các thuê bao đăng kí với hệ thống ứng dụng OCS ở miền khởi tạo. 3WC. - Returns: AR trả về kết quả lựa chọn ứng dụng. Call Forwarding (CF).JOIN. CF ở miền kết thúc và CW.. Thứ tự ưu tiên giữa các ứng dụng được xác định trước. CF: tất cả các địa chỉ có dạng sip:.lang.REPLACES) và tên của ứng dụng. 3WC ở cả hai miền.2. 3WC : tất cả các địa chỉ có dạng sip:.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ directive – hướng định tuyến được sử dụng để tạo ra kiểu request này.

com) và tìm kiếm thông tin đăng kí phù hợp. container gửi cho AR bản tin INVITE và hướng định tuyến có dạng NEW.com) và tìm kiếm thông tin thuê bao phù hợp với địa chỉ này. 3WC. Sau đó.com From: “Alice” sip:A@example1. AR thiết lập danh sách định tuyến là CF. hướng CONTINUE. AR gửi trả lại cho container tên ứng dụng tiếp theo là 3WC. OCS. miền khởi tạo và thông tin trạng thái từ lần kích hoạt trước. AR thiết lập miền định tuyến hiện tại là miền khởi tạo. Bước 2. AR thiết lập danh sách định tuyến gồm CW. Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 86 .Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ 4. Nó trả về tên ứng dụng cần kích hoạt tiếp theo là CW cho container. AR xác định rằng không có sự thay đổi địa chỉ miền khởi tạo. container gửi cho AR bản tin mà nó nhận được từ CWA. 3WC. thiết lập địa chỉ thuê bao hiện tại là địa chỉ trong trường Request-URI ( sip:B@examlple2. Nó chuyển miền định tuyến sang miền kết thúc. danh sách định tuyến của AR trở thành tập rỗng. Bước 5. Bản tin INVITE được A gửi cho container. 6 tương tự bước 2 và 3.5.1 Ví dụ 1: không có sự thay đổi địa chỉ Trong ví dụ này. Bước 3. Sau khi so sánh địa chỉ thuê bao trong thông tin trạng thái và bản tin. AR xác định rằng không có sự thay đổi địa chỉ và lấy lại danh sách định tuyến vừa được lưu trữ trong thông tin trạng thái và bỏ đi tên ứng dụng đầu tiên trong danh sách. địa chỉ thuê bao là địa chỉ trong trường From (“Alice” sip:A@example1. A gọi cho B và các ứng dụng chỉ đơn giản chuyển tiếp bản tin yêu cầu mà không thay đổi trường From hoặc Request-URI. CW và trả về cho container tên ứng dụng CF cần kích hoạt tiếp theo. có dạng: INVITE sip:B@example2. Sau đó. tương tự bước 2. Bước 4.com Chuỗi ứng dụng cần kích hoạt để phục vụ yêu cầu từ A như sau: Hình 4-27: Minh họa ví dụ 1 Bước 1.2. Sau khi xóa bỏ tên ứng dụng OCS.

2 Ví dụ 2: thay đổi địa chỉ: Trong ứng dụng này. khi A gọi B. AR tìm các ứng dụng cho thuê bao C. Sau đó. sau khi cuộc gọi từ A đến B được thiết lập xong. OCS. container gửi bản tin cho B.3 Ví dụ 3: đảo hướng định tuyến: Quay trở lại ví dụ A. 3WCB gửi bản tin có hướng REVERSE có dạng: INVITE sip:C@example2. AR sau khi kiểm tra bản tin xác định rằng. CW. Như vậy. AR chuyển miền định tuyến từ miền kết thúc sang miền khởi tạo. 4.2.com AR nhận được bản tin yêu cầu. B kích hoạt dịch vụ 3WC để thêm C vào phiên đàm thoại. Chuỗi ứng dụng được kích hoạt như sau: Hình 4-28: Minh họa ví dụ 2 Ví dụ này khác ví dụ 1 ở bước 5. Cuối cúng. danh sách định tuyến mới trở thành OCS. và AR trả về tên OCS cho container.5. B cấu hình ứng dụng CF của mình chuyển tất cả cuộc gọi cho thuê bao C. 3WC.2. CFB thay đổi trường Request-URI để chuyển cuộc gọi sang C. AR xóa tên CW ra khỏi danh sách định tuyến. Các ứng dụng trong miền khởi tạo của B là CW. Ứng dụng tiếp theo cần kích hoạt là CFC. 4. Sau đó. AR thông tin không có ứng dụng nào cần kích hoạt cho container.CW. và danh sách định tuyến đang lưu trữ gồm 3WC. Bước 8. Vì hướng ở đây là REVERSE. địa chỉ kết thúc đã bị đổi từ B sang C. 3WC.com From: “Bob” sip:B@example1. các ứng dụng tiếp theo được kích hoạt với miền định tuyến là miền kết thúc của thuê bao C. Sử dụng tên ứng dụng 3WC trong danh sách định tuyến đang lưu trữ để tính toán phần còn lại. lập danh sách định tuyến gồm CF.5.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ Bước 7. có hướng REVERSE. Chuỗi ứng dụng được kích hoạt theo mô hình sau: Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 87 .

5. Nếu nhà hàng có thể đáp ứng được yêu cầu của khách. Ở đây. khách hàng đang tiến hành gởi yêu cầu cho service “phục vụ khách hàng” của nhà hàng.1 Service Oriented Architecture 5.1 Khái niệm Web Service và Service Oriented Architecture.1.1. yêu cầu chính là món Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 88 . nhân viên nhà hàng sẽ từ chối hoặc đề nghị khách hàng gọi món khác.1 Service Về mặt định nghĩa. nếu món ăn khách hàng yêu cầu nhà hàng không có hoặc đã hết. Thông thường việc giao tiếp này được thực hiện trên các interface đã được chuẩn hóa và sử dụng rộng rãi. Một ví dụ đơn giản của service chính là hoạt động của một nhà hàng. Nhân viên nhà hàng nhậc được yêu cầu của khách. service là một hệ thống có khả năng nhận một hay nhiều yêu cầu xử lý và sau đó đáp ứng lại bằng cách trả về một hay nhiều kết quả. Khi khách hàng vào nhà hàng và gọi thức ăn. món ăn sẽ được chế biến và mang ra cho khách hàng thưởng thức sau một khoảng thời gian chờ. Quá trình nhận yêu cầu và trả kết quả về được thực hiện thông qua các interface đã được định nghĩa trước đó.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ Hình 4-11: Minh họa ví dụ 3 5 CHƯƠNG V : CÁC PHƯƠNG PHÁP PHỐI HỢP DỊCH VỤ TRONG MIỀN WEB 5.1.

1.  Chia sẻ các schema và contract.1. Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 89 . Các service trong hệ thống giao tiếp với nhau thông qua việc gởi nhận các thông điệp (message). các service không truyền các class và type.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ ăn mà khách hàng muốn thưởng thức. không chia sẻ lớp Về mặt trao đổi dữ liệu. có thể được build và đưa vào sử dụng mà không phụ thuộc vào các service khác. các class và type sẽ được đặc tả hình thức (data được đặc tả trong schema. behavior được đặc tả thành các contract )  Tính tương thích giữa các service dựa trên các policy Sự tương thích giữa các service được căn cứ vào các policy. 5. Một hệ thống được thiết kế theo kiểu hướng service (service oriented) là một hệ thống trong đó các chức năng của hệ thống được xây dựng dựa trên các service có độ kết dính thấp. Chi tiết hiện thực của mỗi service sẽ không được thể hiện ra bên ngoài. còn kết quả trả về của service phục vụ nhà hàng chính là từ chối (nếu nhà hàng không đáp ứng được yêu cầu của khách) hay là món ăn mà khách hàng cần.2 Các đặc điểm chính của service  Có ranh giới rõ ràng Mỗi service được xây dựng dựa trên các interface chuẩn hóa đã được sử dụng rộng rãi. Tương thích về mặt cấu trúc dựa trên các đặc tả hình thức bao gồm contract (dựa trên Web Service Description Language (WSDL) hoặc Business Process Execution Language for Web Services (BPEL4WS)) và schema (XSD) Sự tương thích dựa trên policy cung cấp khả năng phân tích cũng như đảm bảo sự tương thích giữa các service. mỗi service có tính độc lập cao. Thay vào đó.  Tính tự trị (Autonomous) Về mặt lý thuyết. Mỗi service chỉ công bố một số các interface của nó cho user có thể dùng để gởi các yêu cầu và nhận kết quả trả về.

Hình 5-29: Các tác nhân trong SOA Service Provider sẽ đăng kí thông tin về service mà mình có thể cung cấp (các chức năng có thể cung cấp.  Service Provider: Cung cấp stateless service phục vụ cho một nhu cầu nào đó. Một hệ thống được xây dựng theo mô hình SOA bao gồm các service thỏa mãn các tính chất của service ở mục 5.2. Mỗi service trong hệ thống có thể được sửa đổi một cách độc lập với các service khác nhằm mục đích đáp ứng một yêu cầu mới từ thực tế.1 Các tác nhân trong SOA Error: Reference source not found mô tả các actor tham gia trong một hệ thống xây dựng theo SOA.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ 5. 5. Service Consumer dựa trên những thông tin này để tìm kiếm và lựa chọn Service Provider phù hợp. giá Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 90 .1.1.1.3. khả năng của hệ thống (resource. User (service consumer) không cần quan tâm đến vị trí thực sự mà service họ cần sử dụng đang hoạt động. performance).  Serive Consumer: User sử dụng service được cung cấp bởi Service Provider  Service Registry: Nơi lưu trữ thông tin về các service của các Service Provider khác nhau.1.1.3 Service Oriented Architecture Service Oriented Architecture (SOA) cung cấp cơ chế cho phép các hệ thống hoạt động trên các platform khác nhau có thể giao tiếp với nhau.1.

3. 5. Những thông tin này sẽ hỗ trợ thêm cho quá trình tìm kiếm của Service Consumer. Ngoài chức năng hỗ trợ tìm kiếm. Service Consumer khi có nhu cầu về một service nào đó sẽ tìm kiếm thông tin trên Service Registry.3 Thông điệp (message) trong SOA Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 91 .. o Hoạt động của các service có tính động.  Lợi ích kinh tế o Doanh nghiệp có điều kiện tập trung thời gian để tìm kiếm các giải pháp cho các bài toán liên quan đến kinh tế. .  Lợi ích kỹ thuật o Hệ thống xây dựng theo mô hình SOA đảm bảo các service trong hệ thống có tính độc lập cao (độ kết dính thấp) (autonomous và loose coupling).1....) 5. Service Registry còn có thể xếp hạng các Service Provider dựa trên các tiêu chí về chất lượng dịch vụ.1. resource sử dụng. .1. bầu chọn từ các khách hàng đã sử dụng service. o Ở góc nhìn người sử dụng. tùy yêu cầu cần xử lý mà có sự khác nhau (late binding). Service Consumer thiết lập kênh giao tiếp trực tiếp với Service Provider nhằm sử dụng service hoặc tiến hành thương lượng thêm (về mặt giá cả. hành vi của các service tùy thời đểm. o Thúc đẩy sự phát triển của hệ thống hiện có cũng như cung cấp khả năng mở rộng hệ thống trong tương lai.. Khi đã xác định được Service Provider mong muốn. .) vào Service Registry.1. việc di dời các service đến một máy tính khác không ảnh hưởng khả năng phục vụ yêu cầu khách hàng.2 Ích lợi khi sử dụng SOA Sử dụng mô hình SOA trong việc thiết kế hệ thống mang lại lợi ích về mặt kinhtế cũng như kỹ thuật.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ cả dịch vụ.3. vị trí các service có tính trong suốt (transparency)..

. FTP.  Asynchronous communications: hoạt động gởi nhận thông điệp được thực hiện theo cơ chế Fire-and-Forget. điểm khác biệt chính của SOA là cung cấp khả năng giao tiếp giữa các thành phần trong hệ thống (service) sử dụng thông điệp (message) dựa trên các chuẩn giao tiếp đã được chuẩn hóa (HTTP. SMTP.  Thread management: Việc trao đổi thông điệp theo cơ chế bất đồng bộ giúp ứng dụng không cần ngừng thực thi để chờ một tác vụ kết thúc mà có thể tạo ra các thread xử lý các công việc khác nhau. Điều này giúp cho Sender và Receiver tiếp tục xử lý công việc sau khi gởi thông điệp mà không cần dừng thực thi để chờ thông điệp trả lời. hệ thống SOA trở nên độc lập với platform (platform independent). Điều này đảm bảo các service trên các platform khác nhau hoạt động với cấu trúc dữ liệu đặc thù của platform đó. Cơ chế Store-and-Forward này đảm bảo các thông điệp sẽ không bị thất lạc trong trường hợp Receiver bị quá tải và không thể nhận thêm yêu cầu mới. Service trung gian sẽ gởi (forward) thông điệp cho Receiver khi Receiver có thể xử lý yêu cầu tiếp theo.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ So với kiểu thiết kế Component-Based. Sử dụng thông điệp (message) để giao tiếp có các lợi thế sau:  Cross-platform: thông điệp (message) trở thành ngôn ngữ chung của các platform và các ngôn ngữ lập trình khác nhau. . Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 92 . Các service hoạt động trên nền các platform khác nhau vẫn có thể giao tiếp với nhau nhờ vào các interface giao tiếp đã được chuẩn hóa để cộng tác xử lý một tác vụ nào đó..  Remote communication: Các thông điệp lưu trữ thông tin về các đối tượng dữ liệu dưới dạng đặc tả hình thức thay thế việc phải serialization and deserialization các đối tượng dữ liệu truyền qua mạng khi ứng dụng thực hiện remote call một ứng dụng khác. Chính nhờ đặc điểm này.  Reliable communication: các thông điệp từ Sender có thể được gởi đến một service trung gian có nhiệm vụ lưu trữ (store) các thông điệp.). Sender và Receiver không cần phải chờ thông điệp trả lời sau khi đã gởi đi một thông điệp.

Web service cung cấp hệ thống phần mềm hỗ trợ việc giao tiếp giữa các máy tính trên network.1.2.1 Cấu trúc Web service Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 93 .1. 5.2 Web Service Web service là một hiện thực của service sử dụng web protocol để giao tiếp.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ  End-to-end security: Thông điệp có thể lưu trữ thông tin về security context của kênh giao tiếp. 5. Điều này cung cấp khả năng điều khiển liên quan đến security như authentication and authorization.

Ngay sau đó. Thành phần chính của Service Broker là Universal Discovery. Tương tự với SOA.) và gởi cho Service Broker. and Integration (UDDI) repositories. Cung cấp chức năng tìm kiếm hỗ trợ Service Requester (Service Consumer trong SOA) trong việc xác định Service Provider phù hợp. Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 94 . có 3 tác nhân chính tham gia vào Web service. giữa Service Requester và Service Provider thiết lập kênh giao tiếp sử dụng SOAP để thương lượng giá cả và các yếu tố khác trong việc sử dụng service.  Service Broker: Lưu trữ thông tin về các service được cung cấp bởi các Service Provider.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ Hình 5-30: Tập giao thức trong Web service Hình 5-2 mô tả các layer hình thành nên Web service. thời gian sử dụng. Description. Service Requester có thể tìm thấy Service Provider thích hợp. Bằng việc sử dụng UDDI và chức năng tìm kiếm của Service Broker.. Hình 5-3 mô tả các Web service actor tương ứng với các layer này.  Service Requester: Dùng WSDL để đặc tả nhu cầu sử dụng (loại service..  Service Provider: Dùng Web Services Description Language (WSDL) để mô tả dịch vụ mà mình có thể cung cấp cho Service Broker (tương tự với Service Registry trong SOA). mức giá . resource cần thiết.

2. TCP. ứng dụng có thể yêu cầu thực thi method trên máy tính ở xa mà không cần quan tâm đến chi tiết về platform cũng như các phần mềm trên máy tính đó. FTP. tùy vào đặc điểm hệ thống của mình có thể định nghĩa thêm các chức năng mở rộng nhằm tăng thêm lợi thế cạnh tranh cũng như cung cấp thêm tiện ích cho người sử dụng.1. Các chức năng về bảo mật. Các nhà cung cấp dịch vụ khác nhau. ngôn ngữ lập trình hay programming model được sử dụng. Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 95 . 5. SOAP được sử dụng để đặc tả và trao đổi thông tin về các cấu trúc dữ liệu cũng như các kiểu dữ liệu giữa các thành phần trong hệ thống. Sử dụng SOAP.1.2. tăng độ tin cậy có thể đưa vào phần mở rộng của SOAP.2 Simple Object Access Protocol – SOAP SOAP là một protocol giao tiếp dùng trong Web service được xây dựng dựa trên XML.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ Hình 5-31: Các tác nhân của Web service 5.2.. SMTP.1 Các đặc điểm của SOAP  Khả năng mở rộng (Extensible): Cung cấp khả năng mở rộng phục vụ cho nhu cầu đặc thù của ứng dụng và nhà cung cấp. .)  Độc lập với platform..  Có thể hoạt động trên các network protocol đã được chuẩn hóa (HTTP.

Hình 5-32: Thông điệp SOAP Hình 5-4 mô tả cấu trúc một thông điệp SOAP. Web service sẽ nhận và phân tích yêu cầu sau đó trả về kết quả thích hợp.1. Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 96 .2. Ứng dụng sẽ đặc tả yêu cầu trong SOAP message và thông qua network protocol gởi đến cho web service. o SOAP body: Thông tin về name và data được đặc tả dưới dạng XML. Ngoài ra còn có trường lỗi được dùng để gởi các web service exception.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ 5. Một thông điệp SOAP bao gồm các thành phần sau:  Protocol Header: Cho biết thông tin về các chuẩn giao thức được sử dụng.2 SOAP Message Structures Error: Reference source not found mô tả giao tiếp của một ứnng dụng với một web service được thực hiện qua thông điệp SOAP sử dụng network protocol HTTP.  SOAP Envelop: Thông tin chính của message bao gồm: o SOAP Header: Chứa các SOAP header.2.

org/soap/envelope/" xmlns:SOAP-ENC=http://schemas. Messge request sẽ truyền đối số 123(số nguyên cần nhân đôi) trong phần SOAP body:  Request <?xml version="1.xmlsoap.w3.0" encoding="UTF-8" standalone="no" ?> <SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas. trong đó message request được sử dụng để yêu cầu web service thực hiện method ‘int doubleAnInteger (int numberToDouble)’ nhằm nhân đôi một số nguyên.org/1999/XMLSchema-instance" xmlns:xsd="http://www.w3.org/soap/encoding/ xmlns:xsi="http://www.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ Hình 5-33: Cấu trúc bản tin SOAP Sau đây là ví dụ về SOAP message.xmlsoap.xmlsoap.org/1999/XMLSchema"> <SOAP-ENV:Body> <ns1:doubleAnInteger xmlns:ns1="urn:MySoapServices"> <param1 xsi:type="xsd:int">123</param1> </ns1:doubleAnInteger> </SOAP-ENV:Body> Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 97 .

Việc đặc tả này bao gồm protocol được sử dụng.  Services: Chứa các method có thể được sử dụng thông qua các web protocol.org/1999/XMLSchema"> <SOAP-ENV:Body> <ns1:doubleAnIntegerResponse xmlns:ns1="urn:MySoapServices" SOAP-ENV: encodingStyle="http://schemas.xmlsoap.1..Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ </SOAP-ENV:Envelope>  Response <?xml version="1.w3. Kết quả của phép nhân đôi số nguyên 123 (được truyền bởi message request) là 246. interface giao tiếp của một web service được thực hiện dựa vào Web Service Description Language (WSDL)..org/soap/encoding/"> <return xsi:type="xsd:int">246</return> </ns1:doubleAnIntegerResponse> </SOAP-ENV:Body> </SOAP-ENV:Envelope> Message response mang thông tin kết quả trả về trong phần body.org/1999/XMLSchema-instance xmlns:xsd="http://www. Error: Reference source not found mô tả các thành phần cơ bản của một file WSDL dùng để đặc tả một web service.org/soap/envelope/ xmlns:xsi=http://www. 5.3 Web Service Description Language – WSDL Việc đặc tả chức năng.xmlsoap.w3.0" encoding="UTF-8" ?> <SOAP-ENV:Envelope xmlns:SOAP-ENV=http://schemas. cấu trúc và định dạng dữ liệu dùng để giao tiếp. Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 98 .

 Operations: Mỗi operation có thể được xem như một method hay một lời gọi hàm trong các ngôn ngữ lập trình cổ điển. các tác vụ mà service cung cấp và định dạng các thông điệp được sử dụng để khởi động các tác vụ này. Thông thường.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ  Ports: Địa chỉ dùng để kết nối đến web service. Hình 5-34: Tổng quan về WSDL  Port Types: định nghĩa một web service.  Message: Mỗi message tương ứng với một operation và chứa các thông tin cần thiết để thực thi operation đó. SOAP protocol được dùng. Element được dùng để đặc tả dữ liệu dùng trong message. ports được mô tả bằng một HTTP URL.  Binding: chỉ định port type. các operation. Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 99 . Các logical part được phân biệt với nhau qua name và có thể lưu trữ các tham số cần cho operation. Mỗi message có một name duy nhất và một hay nhiều logical part. SOAP binding stype (RPC/Document).  Element: Được định nghĩa trong Types. Mỗi element có một name duy nhất và kiểu dữ liệu.

Có hai cách để phối hợp các dịch vụ như vậy: có thể dùng orchestration hoặc choreography.2. 5.1 Giới thiệu: Web services và SOA. Qui trình xử lý này phối hợp hoạt động của các dịch vụ web tham gia vào quá trình. Vì vậy. Nó có thể có nhiều đầu vào và chỉ có một đầu ra duy nhất.” Trong phần này. Chỉ có qui trình xử lý tập trung (bộ phối hợp dịch vụ) mới biết rõ quá trình này.  XSD file: Các element thường được định nghĩa trong các XML Schema Definition (XSD) file. XSD file có thể ở trong cùng file WSDL hoặc ở file riêng biệt. Các xác định như vậy sẽ cho phép miêu tả một cách trừu tượng các định nghĩa về qui trình xử lý. struct.2. Trong phương pháp orchestration.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ Element có thể đặc tả các dữ liệu đơn giản (string. “Một qui trình xử lý là một tập hợp các hành động có thứ tự. cần một ngôn ngữ để xác định cách các dịch vụ được tạo ra trong qui trình nghiệp vụ. integer) hay phức tạp hơn như array. và tập trung miêu tả công nghệ BPEL4WS (Business Process Execution Language for Web Services). các dịch vụ web được điều khiển bởi một qui trình xử lý tập trung (có thể là một dịch vụ web khác). Các dịch vụ web được kích hoạt không biết và không cần phải biết chúng đang tham gia vào quá trình phối hợp và đóng vai trò trong đó.2 Orchestration và Choreography Web service được sử dụng để cung cấp dịch vụ qua Internet. 5. . phương Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 100 .2 Web Service Orchestration 5. em xin trình bày các công nghệ được sử dụng để phối hợp các dịch vụ Web.. có khởi đầu và kết thúc. Nó thực hiện các tác vụ cho phép các hệ thống thông tin được kích hoạt qua mạng. trong bối cảnh hướng tới qui trình xử lí..

các bản tin trao đổi …(Xem hình 5-8) Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 101 . các hoạt động để thực hiện nhiệm vụ. (Xem hình 5-7). Choreography được xây dựng dựa trên sự cộng tác (collaboration) và chủ yếu được sử dụng để trao đổi các bản tin giữa các qui trình nghiệp vụ công khai.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ pháp orchestration tập trung vào định nghĩa rõ ràng các hoạt động và thứ tự kích hoạt của các dịch vụ web. Hình 5-35: Phối hợp dịch vụ web với phương pháp Orchestration Trái lại. phương pháp Choreography không phụ thuộc vào một bộ phối hợp tập trung. Tất cả các dịch vụ web tham gia vào choreography đều phải biết rõ về qui trình nghiệp vụ. Mỗi dịch vụ web tham gia vào trong quá trình phối hợp phải biết chính xác khi nào chúng được hoạt động và chúng tương tác với dịch vụ nào.

2. 5. Các ưu điểm của orchestration so với choreography là:  Sự phối hợp giữa các thành phần tham gia vào qui trình được quản lý một cách tập trung bằng một bộ phối hợp duy nhất.3. Chúng bao gồm: WSCL.2. BPML và BPEL4WS.  Nhiều kịch bản khác nhau có thể được thêm vào trong trường hợp xuất hiện lỗi.1 Web Services Conversation Language (WSCL) Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 102 .  Các dịch vụ web có thể tương tác với nhau mà không cần phải biết chúng đang tham gia vào một qui trình nghiệp vụ lớn hơn. WSCI.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ Hình 5-36: Phối hợp dịch vụ web với phương pháp Choreography Khi so sánh với phương pháp choreography. 5. BPMN.3 Các ngôn ngữ dùng trong orchestration: Đến nay đã có khá nhiều ngôn ngữ được phát triển để thực hiện qui trình phối hợp và triển khai các dịch vụ web. WSFL. phương pháp orchestration rõ ràng là hiệu quả và mềm dẻo hơn. XLANG.

nó đã được kết hợp với ngôn ngữ WSFL để hình thành BPEL4WS. được xây dựng dựa trên việc mô hình hóa thứ tự tương tác giữa các dịch vụ web. một cách song song và có điều kiện. Vì các định nghĩa mô tả phiên trao đổi trong WSCL là các tệp XML nên các công cụ phát triển web service có thể hiểu được chúng. Và hiện nay. WSCL bao gồm 4 yếu tố chính sau đây (xem Hình ):  Các mô tả dạng văn bản – Document type descriptions: xác định dạng của các văn bản XML mà dịch vụ có thể chấp nhận và chuyển tiếp trong phiên trao đổi. Nó cho phép xây dựng các qui trình nghiệp vụ và cung cấp khả năng tương tác với các nhà cung cấp dịch vụ web.  Các tương tác . WSCL cho phép xác định các interface trừu tượng cho web service.2 XLANG Tiêu chuẩn kĩ thuật XLANG được Microsoft phát triển.3. XLANG hỗ trợ điều khiển xử lý theo thứ tự. Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 103 . XLANG giao tiếp thông qua các interface của ngôn ngữ WSDL.2. Chức năng của nó tương tự như chức năng của choreography. Hình 5-37: Ví dụ về WSCL 5.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ WSCL là một ngôn ngữ trao đổi đơn giản.Interactions: tạo ra các hành động mẫu trong phiên trao đổi như sự trao đổi các văn bản giữa hai dịch vụ tham gia vào quá trình phối hợp  Các Transitions: xác định mối quan hệ thứ tự giữa các tương tác.

Mục đích chính của BPMN là để cung cấp giải pháp kĩ thuật cho người sử dụng để xác định và quản lý các qui trình xử lý của họ bằng cách cung cấp một giải thích tiêu chuẩn mô tả chính xác các quá trình phức tạp. Association Swimlanes: Pool. Các tập hợp hình cơ bản bao gồm:     Flow Objects: các sự kiện. người sử dụng và các nhà phát triển dịch vụ có thể dễ dàng hiểu các tiến trình xử lý. BPMN hỗ trợ ánh xạ giữa các mô hình và các ngôn ngữ thực thi. Connecting Objects: Sequence Flow.2.3. Annotation. Lanel.3. Qua các sơ đồ này. Ngôn ngữ này được kết hợp với XLANG để tạo ra BPEL4WS.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ 5. 5. WSFL định nghĩa ra thứ tự thực hiện các hành động và trao đổi dữ liệu cho quá trình xử lý. WSFL hỗ trợ xử lý các tác vụ trong khi nó không tham gia hỗ trợ trực tiếp các phiên giao tiếp. Quá trình mô hình hóa trong BPMN được thực hiện bằng các sơ đồ đơn giản. hành động và gateway. BPMN hiện nay vẫn là tiêu chuẩn để mô hình hóa một tiến trình nghiệp vụ. Một định nghĩa mà WSFL tạo ra có thể được giao tiếp với interface WSDL.4 Business Process Modeling Notation (BPMN) BPMN là bản trình bày bằng mô hình để mô tả các qui trình nghiệp vụ trong một tiến trình công việc. BPMN được thực hiện bằng BPMI (Business Process Management Initiative). Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 104 . ví dụ như BPEL. Artifacts: Data Object.3 Web Services Flow Language (WSFL) WSFL được IBM phát triển để mô tả các quá trình xử lý mở và đóng. Các sơ đồ này bao gồm một tập hợp các hình khối đơn giản.2. Message Flow.

điều khiển việc thực thi. WSCI không có qui trình xử lý tương tác phối hợp giữa các dịch vụ. một văn bản WSCI chỉ đặc tả một dịch vụ tham gia vào nhóm trao đổi. Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 105 . Đặc tả WSCI được Sun. các qui tắc về tứ tự. các phiên giao tiếp và hỗ trợ tương tác động giữa các dịch vụ. trái ngược với BPEL4WS. BEA và Intalio đưa ra. WSCI cung cấp sự liên kết các bản tin. Hơn nữa.3.2. Nó mô tả các bản tin giữa các dịch vụ web tham gia vào nhóm trao đổi.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ Hình 5-38: Tập hợp các mô hình trong BPMN 5. WSCI không xác định các qui trình xử lý nghiệp vụ.5 Web Services Choreography Interface (WSCI) WSCI là ngôn ngữ mô tả giao tiếp dựa trên XML. SAP.

Hình 5-40: Ví dụ đơn giản về WSCI Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 106 . còn có cả các văn bản cho người mua dịch vụ và nhà cung cấp. ví dụ như ReceiveComfrimation. Trong quá trình xử lý. được tạo ra từ các hành động tuần tự.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ Hình 5-39: Web Services Choreography Interface (WSCI) Sau đây em xin đưa một ví dụ đơn giản về WSCI. Ví dụ này về quá trình xử lý của một dịch vụ du lịch.

org) đưa ra. Microsoft và BEA phát triển toàn diện. bằng các xác định chức năng và thành phần tham gia tương tự với cấu trúc của BPEL. các hành động có cấu trúc để xử lý các lựa chọn có điều kiện.2. Nó bao Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 107 . các hành động có tính tuần tự và song song. Đặc tả này là kết hợp của XLANG và WSFL. Nó cũng cho phép định nghĩa các hành động cơ bản để nhận và kích hoạt dịch vụ.7 Business Process Execution Language for Web Services (BPEL4WS). Đặc tả BPML được tổ chức Business Process Management Initiative (BPMI. Đặc tả BPEL4WS hiện nay đã được IBM.3. vì thế nó có khả năng quản lý các tiến trình dài. Một điểm mạnh nữa của BPML là nó có tính bền bỉ và liên kết chặt chẽ. BPML được so sánh với BPEL4WS vì nó cung cấp các cấu trúc mô tả tiến trình xử lý tương tự như BPEL.2. Các bản tin XML được sử dụng để hỗ trợ sự tương tác giữa các dịch vụ tham gia vào quá trình. BPML cũng được sử dụng để tạo ra các quá trình con để tham gia vào quá trình lớn hơn.3. Hình 5-41: Ví dụ đơn giản về BPML 5.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ 5.6 Business Process Management Language (BPML) BPML được sử dụng để mô tả các qui trình nghiệp vụ. BPEL4WS cho phép mô hình hóa các hành vi của dịch vụ web trong một quá trình nghiệp vụ.

ví dụ. hay còn gọi là BPEL. 5. Một qui trình BPEL xác định thứ tự mà các dịch vụ web được tạo ra một cách tuần tự hay song song. 5.3. apacheODE hoặc jBPM JBOSS. và sự trao đổi bản tin được gọi là một activity. Nói cách khác. Với BPEL. một process bao gồm một tập hợp các activity và nó kích hoạt các partner bên ngoài bằng cách sử dụng interface WSDL. Em xin trình bày sâu hơn về BPEL trong phần sau. Các giao thức nghiệp vụ trừu tượng cho phép đặc tả trao đổi bản tin giữa các nhóm. Chúng tuân theo các mẫu phối hợp và engine phối hợp dịch vụ thực thi. BPEL hỗ trợ hai cách khác nhau để mô tả các qui trình nghiệp vụ hỗ trợ phối hợp dịch vụ. các biến. hiện nay là tiêu chuẩn được sử dụng trong thực tế để xây dựng.1 Giới thiệu Business Process Execution Language for Webservices. mô tả và thực thi các qui trình nghiệp vụ trong phối hợp dịch vụ web. có thể phụ thuộc vào kết quả kích hoạt dịch vụ của một trang web khác. Các qui trình nghiệp vụ phức tạp có thể được xây dựng bằng các thuật toán sử dụng các cấu trúc này. Kết quả từ quá trình phối hợp được gọi là một process. BPEL cho phép mô tả các activity có điều kiện. các bản copy và định trước giá trị. Bộ phối hợp dịch vụ này xử lý các hành động trong quá trình và điều chỉnh hệ thống khi có lỗi xuất hiện. Ngôn ngữ này có thể được dịch và thực hiện bằng các bộ phối hợp dịch vụ như activeVOS. Các qui trình nghiệp vụ cũng có thể dễ dàng mô tả bằng các biểu đồ UML. Đó là: Các qui trình thực thi cho phép đặc tả các chi tiết của qui trình nghiệp vụ.3 Business Process Execution Language for Webservices. Chúng không bao gồm các chi tiết bên trong của qui trình và không Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 108 . các dịch vụ tham gia được gọi là các partner. Sự kích hoạt dịch vụ web.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ gồm các cú pháp dựa trên XML để thực thi và xác định các quan hệ logic để phối hợp giữa các dịch vụ web tham gia vào tiến trình xử lý. nhà phát triển có thể tạo các vòng lặp. BPEL tạo ra các dịch vụ web để đạt được kết quả cụ thể.

5. Một qui trình bao gồm một tập hợp các công việc.3 Cách xây dụng một qui trình BPEL. Tiến trình công việc xác định thứ tự thực hiện qui trình (nhận và kích hoạt các dịch vụ web. 3. các hoạt động và bản tin cần thiết để xác định các công việc trong qui trình.3. BPEL phải có các không gian tên trỏ đến vị trí của các lược đồ WSDL hỗ trọ và các tài nguyên khác như tập XSL và các tệp XML. dạng kết nối. Tệp nguồn BPEL (. Chúng tuân theo các mẫu của phương pháp phối hợp choreography. 2. 5. dạng kết nối của partner. 5. Tệp WSDL bao gồm không gian tên.wsdl) xác định các cổng. và các tệp WSDL cần thiết để tạo tệp BPEL phù hợp. ánh xạ dữ liệu và trả về cho các partner) 4. Một qui trình BPEL cần một tệp WSDL để tạo ra một tệp xác định qui trình có thể thực hiện được. Thông tin về dạng trao đổi dữ liệu giữa qui trình và dịch vụ. Nó tương tác với các dịch vụ ngoài thông qua interface WSDL. cần có các yếu tố sau: 1.3. các công việc và hành vi có điều kiện.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ được thực thi. Các dịch vụ mà sẽ tương tác với qui trình. 5. các thao tác và các bản tin cần để xác định các công việc trong qui trình.bpel) mô tả thứ tự thực thi.3. vùng chứa tên. Interface của qui trình (. Một qui trình BPEL được xác định bằng hai phần: 1. Để xây dựng một qui trình BPEL.2 Cấu trúc của một qui trình nghiệp vụ Chức năng của BPEL là để xác định các dịch vụ web mới bằng cách tạo ra một tập hợp các dịch vụ đang tồn tại thông qua kĩ thuật process-integration. 2.4 Các đặc tính và yếu tố của một qui trình BPEL Các thành phần chính của BPEL được chỉ ra trong hình sau: Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 109 .

và chúng xác định dạng dữ liệu được xử lý. Ví dụ. xử lý và gửi dữ liệu. Chúng mô tả chức năng của các qui trình và các dịch vụ tham gia vào quá trình tương tác.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ Hình 5-42: Các đặc tính và yếu tố của một qui trình BPEL  Yếu tố xử lý: Đây là thành phần cơ bản trong mô tả của một qui trình BPEL. Nó gồm tên đặc tính và được sử dụng để đặc tả các vùng chứa tên liên quan.  Yếu tố kết nối: các yếu tố này trong qui trình BPEL xác định sự tương tác giữa các dịch vụ tham gia với qui trình. Biến XML này có Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 110 .  Các yếu tố chứa biến: một qui trình BPEL cho phép khai báo các biến để nhận. qui trình nhận được yêu cầu khai báo từ một client và ấn định bản tin này cho biến đầu vào XML.

Một sự kiện báo tin gồm một quá trình hoạt động yêu cầu/hồi đáp hoặc một chiều được thực thi trong qui trình nghiệp vụ. tại bất kì thời điểm nào trong quá trình hoạt động của bộ chỉ báo. o <reply>: tạo phản hồi cho các tác vụ đối xứng. yếu tố tương quan phải cung cấp cách quyết định một bản tin cụ thể được gửi cho thực thể nào. BPEL hỗ trợ các công việc cơ bản cũng như công việc có cấu trúc.  Yếu tố xử lý công việc: công việc trong qui trình nghiệp vụ là các bước xử lý trong một qui trình. o <assign>: kiểm tra các biến dữ liệu. o <throw>: chỉ ra lỗi và các ngoại lệ.Primitive Activities bao gồm: o <invoke>: kích hoạt các dịch vụ web khác. Vì có rất nhiều thực thể trong một qui trình hoạt động cùng lúc.  Yếu tố tương quan: tương quan là một phương pháp của BPEL mà cho phép nhiều qui trình tương tác với nhau trong phiên trao đổi. o <receive>: đợi client kích hoạt qui trình bằng cách gửi đi một bản tin. o <wait>: đợi trong một khoảng thời gian. <EventHandlers> hỗ trợ hai dạng sự kiện: sự kiện báo tin và sự kiện cảnh báo. Bộ xử lý sự kiện gần giống với việc thu thập công việc. hoặc sự kết thúc của các bộ đếm thời gian.  Yếu tố xử lý lỗi: phần xử lý lỗi xác định công việc mà dịch vụ phải thực hiện khi lỗi xuất hiện. Công việc có cấu trúc và có điều khiển – Structure activities: Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 111 .Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ thể được quá trình hoạt động khác sao chép. Các biến trong qui trình được xác định cả dưới dạng bản tin WSDL hoặc dạng XML schema. o <terminate>: kết thúc toàn bộ qui trình.  Yếu tố xử lý sự kiện: bộ xử lý sự kiện cho phép chỉ báo phản hồi các sự kiện. Công việc cơ bản .

+ <flow>: xác định nhóm các activities mà sẽ được kích hoạt song song. Các structure activities chính bao gồm: + <sequence>: xác định tập các activities mà sẽ được thực thi theo thứ tự định trước. BPEL cung cấp vài structure activities cho phép kết hợp các primivitive activities.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ Sự kết hợp giữa các primitive activities được mô tả ở trên cho phép xây dựng các thuật toán phức tạp mô tả chính xác các bước trong qui trình nghiệp vụ. + <switch>: Case-switch construct for implementing branches + <while>: xác định các vòng lặp. Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 112 . + <pick>: lựa chọn một trong vài kết nối khác.

1 Khách hàng – nhà cung cấp so với đối tác ngang hàng: Một khác biệt cơ bản giữa hai miền là trong miền web. 6. sự định tuyến ứng dụng có khác biệt rất lớn so với phối hợp dịch vụ trong web. Tuy nhiên. người sử dụng khởi tạo yêu cầu dịch vụ. nhưng về tổng thể là tất cả các dịch vụ trong tổ hợp đều được kích hoạt để phục vụ yêu Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 113 . Sau đó.1 So sánh hai miền: viễn thông và web: Trong viễn thông. cần phải hiểu rõ hơn về tính tương đồng và khác biệt giữa hai miền. đầu tiên. Trong miền web. Mặc dù có thể xảy ra trường hợp một dịch vụ web gửi yêu cầu tới các dịch vụ web khác. nếu bất kì cách phối hợp dịch vụ giữa viễn thông và web nào được phát triển. ta có thể cảm thấy các phương pháp phối hợp dịch vụ web có thể áp dụng một cách hoàn hảo cho viễn thông. ví dụ như bằng công cụ web browser. Để làm điều đó. chúng ta sẽ nêu những điểm tương đông giữa hai miền và sau đó là chỉ ra điểm khác biệt giữa chúng.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ 6 CHƯƠNG VI : SO SÁNH PHỐI HỢP DỊCH VỤ TRONG MIỀN WEB VÀ VIỄN THÔNG 6.1. chúng ta so sánh các phương pháp hiện nay đang được áp dụng: WS-BPEL trong miền web và SIP Servlet Application Router trong viễn thông.

trong viễn thông. ta so sánh yêu cầu về thời gian Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 114 . Ở đây.4 Các yêu cầu về dịch vụ Các yêu cầu không có tính chức năng là các yêu cầu mà hệ thống viễn thông hoặc web cần có để thỏa mãn khách hàng. Trái lại. ứng dụng record voicemail. Bản tin yêu cầu chỉ chỉ ra phiên giao tiếp nào giữa các thành phần cần được thiết lập. các thành phần có thể tạo ra các yêu cầu trái ngược trong cùng một thời điểm. 6. Do vậy.1. Ví dụ.2 Kích hoạt rõ ràng và không rõ ràng: Miền web là miền hướng dịch vụ.1. các ứng dụng như ứng dụng chờ cuộc gọi call wating. các yêu cầu dịch vụ hướng tới một dịch vụ cụ thể để được kích hoạt. Các khối dịch vụ trong miền viễn thông được kích hoạt một cách không rõ ràng giữa phiên giao tiếp và chỉ được chỉ ra nếu người sử dụng đã đăng kí các khối dịch vụ đặc biệt để phục vụ nhu cầu của họ. Dịch vụ này sau đó có thể kích hoạt các dịch vụ khác. việc xác định thuê bao và miền định tuyến là cần thiết. nhiều ứng dụng có thể hoạt động trong cùng một ngữ cảnh giống nhau.1. Ngược lại. một phiên giao tiếp giữa nhiều thành phần không chỉ ra cụ thể dịch vụ nào cần kích hoạt.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ cầu của người sử dụng. trong một phiên viễn thông. và ứng dụng chuyển cuộc gọi call forwarding đều được kích hoạt khi người sử dụng nhận được một cuộc gọi trong khi đang trong một phiên liên lạc khác. 6. ví dụ. Hơn nữa. có nhiều thành phần tham gia với quan hệ ngang hàng. 6. Sự chồng chéo chức năng trong miền viễn thông có thể gây ra xung đột dịch vụ và phải được quản lý một cách chính xác. Mỗi thành phần này có thể có các ứng dụng để phục vụ nhu cầu của họ.3 Các chức năng phân tán và các chức năng chồng chéo Các dịch vụ web thường được thuật toán phối hợp dịch vụ chọn để thực hiện các chức năng khác nhau. Đây là phương pháp hướng tới người sử dụng mà không chỉ ra dịch vụ nào được sử dụng. Trái lại. trong miền viễn thông. nó là một dịch vụ đơn lẻ. nhưng nhìn từ hướng người sử dụng. Sự quản lý tương tác dịch vụ cũng quan trọng không kém.

tùy theo khoảng thời gian mà mô đun đó hoạt động. Cụ thể. các ứng dụng trong miền viễn thông được xây dựng hoàn toàn dựa trên các giao thức (thường là giao thức SIP) và do vậy. Các API còn có thể được mô tả dựa trên các phương thức đã được tiêu chuẩn hóa (như WSDL). Trái lại.6 Mô hình tương tác Bộ phối hợp dịch vụ trong web service có thể kích hoạt các mô đun một cách đối xứng hoặc bất đối xứng. 6. tiêu chuẩn SIP Servlet yêu cầu các mô đun chỉ được kích hoạt thông qua các phương thức gọi trong Java. các công nghệ hướng tới hai hướng nghiên cứu về phối hợp dịch vụ của hai miền là khác nhau. các nhà phát triển dịch vụ phải sử dụng các giao diện hoàn toàn giống nhau theo tiêu chuẩn SIP (ví dụ. dạng tham số và dạng giá trị trả về cho các API một cách phù hợp nhất. Trong miền web. Trong cả hai trường hợp. các mô đun được xây dựng dựa trên API và có thể tự do mở rộng API này để phục vụ những chức năng mà dịch vụ yêu cầu một cách tốt nhất. có rất it các tiêu chuẩn tương tự như WSDL mô tả đầy đủ các giao diện của các dịch vụ như vậy. tiêu chuẩn SIP servlet API được mô tả trong JSR289). trong khi ở miền viễn thông các khối ứng dụng có yêu cầu chính xác về thời gian thực như trong giao thức SIP đã mô tả. thời gian trễ trước cuộc gọi (khoảng thời gian kể từ lúc kết thúc quay số đến lúc đổ chuông ở máy đích) phải được giới hạn. cũng như lựa chọn dạng bản tin và giao thức giao vận (như SOAP hoặc HTTP).best-effort. Ví dụ. để giảm trễ. Hơn nữa. các ứng dụng web có yêu cầu về thời gian phản hồi chỉ ở dạng nỗ lực tối đa . chúng có thể lựa chọn tên. 6.1. Như vậy. Sở dĩ có yêu cầu như vậy cho miền viễn thông là vì các ứng dụng của nó cần được hoạt động trong thời gian thực.1. Trong khi ở miền viễn thông.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ phản hồi cho hai miền. bộ phối hợp dịch vụ cỏ thể điều chỉnh các quan hệ tương tác giữa các mô đun mà nó kích hoạt và các mô đun có thể tự tương tác Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 115 .5 Những khác biệt về giao thức Trong miền web. từ điểm khác nhau này. Phối hợp dịch vụ trong miền web được hỗ trợ bởi các tiêu chuẩn về web service rất chặt chẽ. Các giao diện này không phản ánh đầy đủ các chức năng của nó như trong web service.

Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ hoặc không tương tác với nhau. ví dụ. Chuỗi ứng dụng có thể chuyển đổi giữa các miền quản lý. Sau đó. người gọi và người bị gọi có thể là các thuê bao của các nhà cung Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 116 . các ứng dụng trong viễn thông được tạo ra theo cấu trúc kiểu chuỗi. 6. Trái lại. Trong khi đó. application router trong miền viễn thông chỉ kích hoạt các mô đun một cách bất đối xứng. Cùng lúc đó. Một điểm khác biệt nữa giữa khối phối hợp dịch vụ trong web service và application router là các khối ứng dụng đang hoạt động có thể tự do trao đổi bản tin SIP (ví dụ. Khi kích hoạt các ứng dụng cho một cuộc gọi. bản tin phản hồi cho yêu cầu khởi tạo hoặc các bản tin yêu cầu và phản hồi giữa phiên trao đổi) với nhau một cách trực tiếp thông qua kênh báo hiệu SIP được thiết lập giữa chúng. các dịch vụ web mà qui trình nghiệp vụ WS-BPEL kích hoạt đầu tiên có thể được kích hoạt bởi các dịch vụ bé hơn. mỗi quá trình phối hợp tại mỗi cấp được một thực thể nghiệp vụ kiểm soát. Thay vào đó. Do vậy. Bộ phối hợp sau đó có thể chuyển các giá trị này như các tham số cho các mô đun khác tham gia vào tập phối hợp dịch vụ. ứng dụng phục vụ cho thuê bao tiếp theo theo tuần tự không được kích hoạt cho đến khi ứng dụng trước đó gửi yêu cầu cho application router. ví dụ bằng các phương thức gửi trả giá trị cho bộ phối hợp. tập phối hợp này chỉ cần triển khai theo một qui trình nghiệp vụ WS-BPEL duy nhất. Khối application router không tham gia vào báo hiệu này.7 Cấu trúc của bộ phối hợp Các dịch vụ web thường kết hợp với nhau một cách lỏng lẻo. toàn bộ quá trình phối hợp có thể được xem như một cấu trúc phân cấp. trong đó. nó không thể điểu chỉnh các quan hệ tương tác giữa các mô đun. do vậy không phụ thuộc nhiều vào nhau.1. chúng chỉ tương tác với bộ phối hợp. Như vậy. khối application router bị giới hạn chỉ kích hoạt cho các thuê bao theo thứ tự. Cấu trúc này phù hợp với yêu cầu về thời gian thực cho miền viễn thông. Bộ phối hợp dịch vụ web service được tụ do kích hoạt các mô đun theo tuần tự hoặc kích hoạt song song để thỏa mãn các yêu cầu vận hành của ứng dụng. Chuỗi ứng dụng này bao gồm một luồng báo hiệu từ đầu tới cuối giữa các khối chức năng tham gia vào phiên. Như vậy.

6. Trong miền viễn thông. phối hợp dịch vụ trong web có thể được coi là dựa trên yêu cầu – phản hồi.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ cấp khác nhau và vì thế. Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 117 . nguồn yêu cầu hoặc phản hồi) được xử lý hoàn toàn theo tuần tự bởi các ứng dụng trong chuỗi SIP. Theo thiết kế. một mô đun chỉ tồn tại trong khoảng thời gian nó tương tác với bộ phối hợp dịch vụ.8 Phương pháp phối hợp dựa trên yêu cầu-phản hồi và dựa trên phiên kết nối Phối hợp dịch vụ trong web không bị giới hạn theo cấu trúc kiểu chuỗi. Phần lớn trạng thái được điều chỉnh bởi các mô đun mà bộ phối hợp đã kích hoạt. báo hiệu cho phiên trao đổi từ cùng một nguồn (ví dụ. Vì một kênh báo hiệu SIP tồn tại giữa các ứng dụng hoạt động lâu dài.1. các chuỗi ứng dụng tuân theo một cấu trúc tuần tự và thứ tự các ứng dụng rất quan trọng đối với việc quản lý tương tác. bắt đầu từ các ứng dụng đầu tiên trong chuỗi. các mô đun thường cung cấp dữ liệu cho bộ phối hợp và các dữ liệu này có thể ảnh hưởng tới các mô đun tiếp theo mà bộ phối hợp kích hoạt. Tuy nhiên. khối phối hợp dịch vụ trong miền viễn thông điều chỉnh trạng thái rất ít – thường chỉ đối với các mô đun đã kích hoạt để phục vụ thuê bao trong một miền nào đó. do vậy nó hỗ trợ cho xử lý kiểu song song.9 Khác biệt về quan hệ trạng thái Bộ phối hợp dịch vụ web service thường điều chỉnh trạng thái thông qua sự kích hoạt mô đun. nên trạng thái bên trong của từng ứng dụng có thể được cập nhật trong các bản tin phản hồi nhận được từ kênh báo hiệu. các thành phần khác biệt trong chuỗi (bao gồm các ứng dụng khác nhau) có thể được tạo ra bởi các nhà cung cấp khác nhau. Các yêu cầu dịch vụ có thể được các thành phần trong tập phối hợp xử lý theo bất kì thứ tự nào hoặc thậm chí. xử lý song song .1. Theo cách này. khối application router lại không nhìn thấy các bản tin trao đổi này vì nó không tham gia và kênh báo hiệu. Do vậy. 6. Trái lại. Các phản hồi được các ứng dụng xử lý theo thứ tự ngược lại so với các yêu cầu. Trong khoảng thời gian đó.

Trong khi đó.1. Các mô đun chỉ trao đổi bản tin với bộ phối hợp dịch vụ. có thể kể đến một số nền tảng như E4SS (ECharts for SIP Servlets). Cần có một thuật toán kích hoạt mô đun nhanh chóng. ta có thể thấy hai hướng phối hợp dịch vụ ở hai miền khác nhau tại một số vấn đề quan trọng. ta có thể xác định các yêu cầu để phối hợp dịch vụ giữa hai miền một cách lý thuyết như sau: 1. Parlay/OSA và Parlay X.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ 6. WIP (Web Service Initiation Protocol) hoặc ECE (Ericsson Composition Engine). Khối application router kích hoạt các ứng dụng của nó theo tuần tự. Nhờ những khác biệt như vậy. thông tin miền đăng kí và thứ tự ưu tiên trong các ứng dụng viễn thông. phù hợp với yêu cầu về thời gian thực. Hiện nay đã có một số hướng tiếp cận để giải quyết vấn đề phối hợp giữa các ứng dụng trong miền viễn thông và các ứng dụng web. Các ứng dụng này tương tác với nhau thông qua các bản tin báo hiệu trên kênh báo hiệu SIP mà khối application router không tham gia vào kênh này. không trao đổi trực tiếp với nhau và thời gian phản hồi có tính nỗ lực tối đa. Cần hỗ trợ việc quản lý xung đột dịch vụ xảy ra giữa các mô đun. Điều này cho phép bộ phối hợp được liên tục cập nhật thông tin trạng thái của các ứng dụng và cho phép bộ phối hợp có thể ảnh hưởng tới các mô đun web và viễn thông ngay cả khi chúng đã được kích hoạt. 3. 2. Cần tiêu chuẩn hóa các tham số như thông tin thuê bao. 4. bộ phối hợp các dịch vụ web và các mô đun ứng dụng web tương tác với nhau trong thời gian tồn tại của các mô đun. Cần có một phương pháp cho phép bộ phối hợp tương tác với các ứng dụng viễn thông sau khi kích hoạt.10 Khác biệt nhưng có thể hòa hợp Theo những so sánh trên. Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 118 .

Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ KẾT LUẬN Trong thời đại ngày nay. dưới sự tận tình của TS. Trong đồ án. Nguyễn Hữu Thanh cùng sự giúp đỡ chia sẻ của các bạn trong nhóm. Internet có vai trò ngày càng quan trọng trong lĩnh vực viễn thông. những nhược điểm: Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 119 . em đã liệt kê một số phương pháp hiện nay đang được áp dụng để phối hợp dịch vụ trong miền IMS và miền Web service. chính vì vậy IMS – sự kết hợp giữa điện thoại di động truyền thống và mạng internet hứa hẹn sẽ đem lại nhiều lợi ích cho cả người sử dụng lẫn nhà cung cấp dịch vụ. em đã nắm được những kiến thức về kiến trúc IMS và tìm hiểu một số phương pháp phối hợp dịch vụ trong IMS và web service. Trong thời gian thực hiện đồ án. Nguyễn Tài Hưng và TS. Tuy nhiên bên cạnh những mặt thuận lợi và những gì đã đạt được là những khó khăn.

Second Edition . nên những gì nắm được là rất cơ bản. The IMS: IP Multimedia Concepts and Services.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ • Thiếu kiến thức về Web service.Johnston. • Hạn chế về tầm hiểu biết. [2] Alan B. TÀI LIỆU THAM KHẢO [1] Gonzalo Camarillo & Miguel A. với sự nỗ lực hết mình của cá nhân và sự giúp đỡ nhiệt tình của các thầy giáo và các bạn trên phòng lab C9-411. John Wiley & Sons. thiếu tính thực hành. em tin rằng trong thời gian tới sẽ có thể tiếp tục nghiên cứu và thực hành các phương pháp này. Tuy nhiên. The 3G IP Multimedia Subsystem Merging The Internet And The Cellular Worlds. Second Edition. 2006. Artech House telecommunications library. Ltd. 2004. [3] Miikka Poikselkä and Georg Mayer. Hisham Khartabil and Aki Niemi © 2006 John Wiley & Sons. • Các kiến thức thu được còn mang tính lý thuyết. Ltd. second edition.Garcia-Martin. SIP: Understanding the session initiation protocol. ISBN: 0-470-01906-9 Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 120 .

[6] Presence. [8] Rfc 3327. Vishal Kumar Singh and Henning Schulzrinne April 10. 2006. CA 95054 U. SunMicrosystems.A. 4150Network Circle Santa Clara. Session Initiation Protocol (SIP) Extension Header Field Nguyễn Quang Dũng – Điện Tử 4– K50 Trang 121 . JAVA – tập 1. SunGlassFish Communications Server 1.S. 2. [7] Ngô Phương Lan. Columbia Computer Science.Đồ án tốt nghiệp đại học Khảo sát các phương pháp phối hợp và tương tác dịch vụ [4] Rfc 3725.5 AdministrationGuide . nhà xuất bản lao động xã hội. Best Current Practices for Third Party Call Control (3pcc) in the Session Initiation Protocol (SIP) [5] 820-4281. Inc.