Luận văn Nghiên cứu nền tảng phân phối và một số giải pháp mạng cung cấp dịch vụ

pdf 62 trang phuongnguyen 4500
Bạn đang xem 20 trang mẫu của tài liệu "Luận văn Nghiên cứu nền tảng phân phối và một số giải pháp mạng cung cấp dịch vụ", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pdfluan_van_nghien_cuu_nen_tang_phan_phoi_va_mot_so_giai_phap_m.pdf

Nội dung text: Luận văn Nghiên cứu nền tảng phân phối và một số giải pháp mạng cung cấp dịch vụ

  1. ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TRƯƠNG VIẾT LỢI NGHIÊN CỨU NỀN TẢNG PHÂN PHỐI VÀ MỘT SỐ GIẢI PHÁP MẠNG CUNG CẤP DỊCH VỤ LUẬN VĂN THẠC SĨ CÔNG NGHỆ ĐIỆN TỬ - VIỄN THÔNG HÀ NỘI – 2014
  2. ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TRƯƠNG VIẾT LỢI NGHIÊN CỨU NỀN TẢNG PHÂN PHỐI VÀ MỘT SỐ GIẢI PHÁP MẠNG CUNG CẤP DỊCH VỤ NGÀNH: CÔNG NGHỆ ĐIỆN TỬ – VIỄN THÔNG CHUYÊN NGÀNH: KỸ THUẬT ĐIỆN TỬ MÃ SỐ: 60 52 02 03 LUẬN VĂN THẠC SĨ CÔNG NGHỆ ĐIỆN TỬ - VIỄN THÔNG NGƯỜI HƯỚNG DẪN KHOA HỌC: TS. ĐINH VĂN DŨNG HÀ NỘI – 2014
  3. 1 LỜI CAM ĐOAN Trong quá trình làm luận văn thạc sỹ đề tài “Nghiên cứu nền tảng phân phối và một số giải pháp mạng cung cấp dịch vụ”, tôi đã đọc và tham khảo rất nhiều loại tài liệu khác nhau từ sách giáo trình, sách chuyên khảo cho đến các bài báo đã được đăng tải trong và ngoài nước. Tôi xin cam đoan những gì tôi viết dưới đây là hoàn toàn chính thống không bịa đặt, những kết quả mô phỏng, thực nghiệm đã đạt được trong luận văn không sao chép từ bất cứ tài liệu nào dưới mọi hình thức. Những kết quả đó là những gì tôi đã nghiên cứu, tích lũy trong suốt thời gian làm luận văn. Tôi xin hoàn toàn chịu trách nhiệm nếu có dấu hiệu sao chép kết quả từ các tài liệu khác. Hà Nội, ngày 17 tháng 12 năm 2014 Học viên Trương Viết Lợi
  4. 2 LỜI CẢM ƠN Trong thời gian nghiên cứu và hoàn thiện luận văn em đã nhận được sự giúp đỡ tận tình và chu đáo của các thầy cô giáo trong Khoa Điện tử - Viễn thông, Trường Đại Học Công Nghệ và các thầy cô, cán bộ trong Viện Công nghệ thông tin, Đại học Quốc gia Hà Nội. Em xin bày tỏ lòng biết ơn sâu sắc tới thầy giáo TS. Đinh Văn Dũng người đã trực tiếp hướng dẫn em trong quá trình nghiên cứu và hoàn thiện luận văn, với tất cả lòng nhiệt tình, chu đáo, ân cần cùng với thái độ nghiên cứu khoa học nghiêm túc và thẳng thắn của một nhà khoa học uy tín, mẫu mực. Em xin chân thành cảm ơn các thầy cô giáo, các anh chị và các bạn đã có những góp ý kịp thời và bổ ích, giúp đỡ em trong suốt quá trình em nghiên cứu và hoàn thiện luận văn này. Một lần nữa em xin được bày tỏ lời cảm ơn chân thành đễn tất cả mọi sự giúp đỡ em trong thời gian vừa qua. Em xin kính chúc các thầy cô, các anh chị và các bạn mạnh khỏe và hạnh phúc. Hà Nội, ngày 17 tháng 12 năm 2014 Học viên Trương Viết Lợi
  5. 3 MỤC LỤC LỜI CAM ĐOAN 1 LỜI CẢM ƠN 2 MỤC LỤC 3 DANH MỤC KÝ HIỆU VÀ CHỮ VIẾT TẮT 5 DANH MỤC HÌNH VẼ, ĐỒ THỊ 6 DANH MỤC BẢNG BIỂU 7 LỜI MỞ ĐẦU 8 Chương 1: MẠNG CUNG CẤP DỊCH VỤ VÀ CÁC VẤN ĐỀ CẦN NGHIÊN CỨU 9 1.1 Tổng quan nền tảng phân phối dịch vụ SDP 9 1.1.1 Giới thiệu nền tảng phân phối dịch vụ 9 1.1.2 Các thành phần của SDP 10 1.1.3 Kết cấu nền tảng phân phối dịch vụ 11 1.2 Mạng hướng dịch vụ SON 12 1.2.1 Giới thiệu mạng hướng dịch vụ 12 1.2.2 Lợi ích 13 1.2.3 Chức năng 14 1.3 Các vấn đề cần nghiên cứu 16 1.3.1 Xây dựng các thiết bị SON 16 1.3.2 Kết nối các thiết bị SON 18 1.4 Kết luận chương 18 Chương 2: SO SÁNH CÁC GIẢI PHÁP MẠNG CUNG CẤP DỊCH VỤ 20 2.1 Kiến trúc IMS cho mạng thông tin di động 20 2.2 Kiến trúc SOA cho doanh nghiệp 21 2.3 Giải pháp WEB 2.0 cho người dùng Internet 22 2.4 Giải pháp SON 23 2.5 Kết luận chương 24 Chương 3: ĐÁNH GIÁ GIẢI PHÁP CÔNG NGHỆ CỦA CÁC HÃNG VÀ ỨNG DỤNG Ở VIỆT NAM 29 3.1 Giải pháp IMS của các hãng và ứng dụng ở Việt Nam 29 3.1.1 Alcatel - Lucent 29 3.1.2 Huawei 30 3.1.3 Ericsson 31 3.2 Giải pháp SOA cho doanh nghiệp 32
  6. 4 3.2.1 Oracle 32 3.2.2 Cisco 33 3.3 Giải pháp Web 2.0 34 3.3.1 Các công nghệ xây dựng ứng dụng web 2.0 34 3.3.2 Web 2.0 tại Việt Nam 35 3.4 Kết luận chương 35 Chương 4: MÔ PHỎNG NỀN TẢNG PHÂN PHỐI DỊCH VỤ 36 4.1 Kiến trúc nền tảng phân phối dịch vụ 36 4.1.1 Tổng quan 36 4.1.2 Các phương pháp luận tích hợp trong nền tảng 36 4.2 Phân tích kếu cấu nền tảng phân phối dịch vụ 37 4.3 Topo mạng dùng trong mô phỏng 38 4.4 Các trường hợp mô phỏng 40 4.4.1 Độ ưu tiên dịch vụ ngang nhau 40 4.4.2 Độ ưu tiên dịch vụ khác nhau 46 4.5 Kết luận chương 50 TỔNG KẾT VÀ HƯỚNG PHÁT TRIỂN ĐỀ TÀI 52 TÀI LIỆU THAM KHẢO 53 Phụ lục 1: Tìm ma trận tất cả đường đi của mạng mô phỏng 55 Phụ lục 2: Hàm lồi và CVX 60
  7. 5 DANH MỤC KÝ HIỆU VÀ CHỮ VIẾT TẮT Kí hiệu Tiếng Anh Tiếng Việt Asynchronous JavaScript and AJAX JavaScript và XML bất đồng bộ XML Application Programming API Giao diện lập trình ứng dụng Interface IM Instant Messaging Tin nhắn tức thời IMS IP Multimedia Subsystem Hệ thống con đa phương tiện IP IPTV Internet Protocol Television Ti vi giao thức internet NGN Next Generation Network Mạng thế hệ kế tiếp OSS Operations support system Hệ thống hỗ trợ vận hành BSS Business support system Hệ thống hỗ trợ kinh doanh QoS Quality of Serice Chất lượng dịch vụ SDP Service Delivery Platform Nền tảng phân phối dịch vụ SIP Session Initiation Protocol Giao thức khởi tạo phiên SMS Short Message Service Dịch vụ tin nhắn ngắn SOA Service-Oriented Architecture Kiến trúc hướng dịch vụ SON Service-Oriented Network Mạng hướng dịch vụ XML Extensible Markup Language Ngôn ngữ đánh dấu mở rộng WS Web Service Dịch vụ Web
  8. 6 DANH MỤC HÌNH VẼ, ĐỒ THỊ Hình 1.1: Kiến trúc SDP tổng quát 9 Hình 1.2: Kết cấu SDP biểu diễn các lớp và miền 12 Hình 1.3: Ví dụ chức năng giảm tải 14 Hình 1.4: Ví dụ tổng hợp dịch vụ 15 Hình 1.5: Ví dụ định tuyến thông minh 16 Hình 1.6: So sánh tiếp cận phần mềm và thiết bị 17 Hình 3. 1: Mô hình giải pháp của Alcatel [4] 29 Hình 3. 2: Mô hình mạng IMS đầy đủ của Huawei [2] 31 Hình 3. 3: Sơ đồ tổng quan giải pháp IMS của Ericsson [13, p. 106] 32 Hình 3. 4: Mô hình kiến trúc SOA Suite. [15] 33 Hình 3. 5: Kết cấu kiến trúc SONA của Cisco [9] 33 Hình 4. 1: Topo mạng hướng dịch vụ với nhiều nhà cung cấp 36 Hình 4. 2: Topo mạng hướng dịch vụ sử dụng trong mô phỏng 39 Hình 4. 3: Thông lượng Dịch vụ theo Đường đi tại thời điểm t1 43 Hình 4. 4: Thông lượng Dịch vụ theo Đường đi tại thời điểm t2 44 Hình 4. 5: Thông lượng Dịch vụ theo Đường đi tại thời điểm t3 45 Hình 4. 6: Thông lượng Dịch vụ theo Đường đi tại thời điểm t4 46 Hình 4. 7: Thông lượng Dịch vụ theo Đường đi tại thời điểm t1 47 Hình 4. 8: Thông lượng Dịch vụ theo Đường đi tại thời điểm t2 48 Hình 4. 9: Thông lượng Dịch vụ theo Đường đi tại thời điểm t3 49 Hình 4. 10: Thông lượng Dịch vụ theo Đường đi tại thời điểm t4 50
  9. 7 DANH MỤC BẢNG BIỂU Bảng 2. 1: So sánh các hệ thống sẵn có 24 Bảng 4. 1: Tốc độ yêu cầu tại các thời điểm khác nhau 41 Bảng 4. 2: Thông lượng các nút thời điểm t1 (hai dịch vụ có độ ưu tiên như nhau) 43 Bảng 4. 3: Thông lượng các nút thời điểm t2 (hai dịch vụ có độ ưu tiên như nhau) 44 Bảng 4. 4: Thông lượng các nút thời điểm t3 (hai dịch vụ có độ ưu tiên như nhau) 45 Bảng 4. 5: Thông lượng các nút thời điểm t4 (hai dịch vụ có độ ưu tiên như nhau) 46 Bảng 4. 6: Thông lượng các nút thời điểm t1 (độ ưu tiên dịch vụ khác nhau) 47 Bảng 4. 7: Thông lượng các nút thời điểm t2 (độ ưu tiên dịch vụ khác nhau) 48 Bảng 4. 8: Thông lượng các nút thời điểm t3 (độ ưu tiên dịch vụ khác nhau) 48 Bảng 4. 9: Thông lượng các nút thời điểm t4 (độ ưu tiên dịch vụ khác nhau) 50
  10. 8 LỜI MỞ ĐẦU Trong khoảng 20 năm trở lại đây, nền kinh tế toàn cầu nói chung và kinh tế Việt Nam nói riêng đã và đang chứng kiến những bước chuyển mình mạnh mẽ bởi ảnh hưởng rộng khắp của mạng và công nghệ thông tin. Thương trường kết nối toàn cầu, nơi mà thông tin là phương tiện giao dịch tạo ra một sự chuyển dịch mạnh mẽ trong nền kinh tế. Năm 2013, CNTT đóng góp trực tiếp gần 8% vào GDP Việt Nam, đồng thời có tác động lan tỏa góp phần làm biến đổi sâu sắc không chỉ đời sống kinh tế mà hầu khắp mọi mặt của xã hội. Cùng với sự phát triển vượt bậc của công nghệ thông tin thì sự bùng nổ về các dịch vụ tiện ích trên mạng viễn thông và internet là tất yếu, đặc biệt đối với thị trường đầy tiềm năng như Việt Nam. Vậy dịch vụ là gì? Dịch vụ là khúc dữ liệu phần mềm hoặc các phần được cấu trúc có thể liên kết với các cấu phần phần mềm khác một cách dễ dàng. Ý tưởng đằng sau các phần mềm này thật đơn giản: Công nghệ nên được diễn tả thành từng đoạn dữ liệu mà người kinh doanh có thể hiểu được hơn là một phần mềm ứng dụng ít người hiểu như ERP hoặc CRM. Từ đó ra đời khái niệm mạng hướng dịch vụ (SON). Đó là xu thế của mạng viễn thông, công nghệ thông tin hiện đại. Với ưu điểm linh hoạt khi mở rộng, kết nối và có thể tái sử dụng dịch vụ. Luận văn: “Nghiên cứu nền tảng phân phối và một số giải pháp mạng cung cấp dịch vụ” sẽ đi sâu tìm hiểu nền tảng phân phối dịch vụ trong môi trường mạng hướng dịch vụ, các lợi ích, chức năng, yêu cầu, thách thức trong quá trình xây dựng, triển khai và giới thiệu một số giải pháp mạng của một số hãng công nghệ nổi tiếng trên thế giới. Nội dung luận văn được chia thành bốn (04) chương như sau: Chương 1. Mạng cung cấp dịch vụ và các vấn đề cần nghiên cứu. Chương 2. So sánh các giải pháp mạng cung cấp dịch vụ. Chương 3. Đánh giá các giải pháp công nghệ của các hãng và ứng dụng ở Việt Nam. Chương 4. Mô phỏng nền tảng phân phối dịch vụ.
  11. 9 Chương 1: MẠNG CUNG CẤP DỊCH VỤ VÀ CÁC VẤN ĐỀ CẦN NGHIÊN CỨU 1.1 Tổng quan nền tảng phân phối dịch vụ SDP 1.1.1 Giới thiệu nền tảng phân phối dịch vụ Nền tảng phân phối dịch vụ SDP (Service Delivery Platform) là một khái niệm không có định nghĩa chuẩn. Tuy nhiên, thông thường SDP được hiểu như là một nền tảng dựa trên công nghệ thông tin (IT) mà công ty viễn thông sử dụng để cung cấp các dịch vụ đa dạng cho khách hàng [11]. Hay SDP là tập hợp các thành phần cung cấp kiến trúc phân phối dịch vụ (như tạo ra dịch vụ, điều khiển phiên và các giao thức) cho một loại dịch vụ nào đó. Cả mạng cố định và di động đều có thể sử dụng một nền tảng phân phối dịch vụ SDP để cung cấp dịch vụ. Các dịch vụ này bao gồm dịch vụ viễn thông truyền thống như điện thoại và các dịch vụ dữ liệu tiên tiến như các ứng dụng IT. Từ định nghĩa này, [11] đưa ra các yêu cầu tối thiểu cho SDP đó là: Hướng dịch vụ bởi vì nó quản lý việc tạo ra, dự liệu, thực thi và tính cước các dịch vụ. Hỗ trợ phân phối dịch vụ trong mạng và phương thức độc lập thiết bị, bởi trừu tượng hóa cơ sở hạ tầng mạng bên dưới. Cung cấp một điểm chuẩn hóa cho các nhà phát triển tìm ra và sử dụng các khả năng về dịch vụ và nội dung đa dạng. Cung cấp cho các nhà phát triển bên ngoài và doanh nghiệp sử dụng IT truy nhập mở và bảo mật tới khả năng của các công ty viễn thông. Hiện tại, SDP không có kiến trúc chuẩn hóa. Tuy nhiên, một kiến trúc SDP tổng quát được đưa ra như trong Hình 1.1. Hình 1.1: Kiến trúc SDP tổng quát
  12. 10 Kiến trúc ở trên chỉ ra các công nghệ đã chuẩn hóa với các giao diện tương ứng. Ví dụ, các chuẩn đã có phù hợp với các giao diện theo chiều dọc nhưng vẫn đang thiếu các chuẩn cho các giao diện theo chiều ngang. Kiến trúc SDP nhận ra các nền tảng dịch vụ đã phân phối. Những nền tảng này trừu tượng hóa và đơn giản hóa các tài nguyên và chức năng mạng viễn thông như khả năng dịch vụ. Các nền tảng và khả năng của chúng là: Nền tảng trừu tượng mạng chứa các bộ khả năng dịch vụ mạng cung cấp một điểm truy nhập chung tới các tài nguyên và khả năng mạng không đồng nhất. Nền tảng phân phối nội dung chứa các bộ khả năng dịch vụ nội dung cung cấp và phân phối nội dung tới khách hàng. Chúng ta xem nội dung như một tài nguyên mạng, được cung cấp bởi công ty viễn thông hay nhà cung cấp bên ngoài. Nền tảng quản lý gồm các bộ khả năng dịch vụ quản lý trừu tượng hóa chức năng OSS/BSS của công ty viễn thông. Nền tảng thực thi dịch vụ gồm các ứng dụng mạng viễn thông cung cấp dịch vụ tới khách hàng. Các dịch vụ này bao gồm thoại, dữ liệu hay các dịch vụ dựa trên đa phương tiện. Các dịch vụ viễn thông sử dụng các dich vụ mạng, nội dung và quản lý. Chúng ta xem các ứng dụng viễn thông này như tập hợp các khả năng dịch vụ vì chúng thể hiện giao diện với các nền tảng khác. Nền tảng hướng dịch vụ chứa các khả năng dịch vụ cung cấp các thực thể bên ngoài truy nhập đơn giản tới tất cả các khả năng dịch vụ của các nền tảng. Hình 1.1 chỉ ra các giao diện khả năng dịch vụ đưa ra bởi các nền tảng tương ứng. Các giao diện này được ánh xạ theo chuẩn giao diện lập trình ứng dụng API. API thực hiện các giao diện bởi nền tảng hướng dịch vụ. Tuy nhiên, Parlay API cũng thực hiện các giao diện bởi nền tảng trừu tượng mạng, nền tảng thực thi dịch vụ và nền tảng phân phối nội dung. Trong Hình 1.1, API dựa trên giao diện không chuẩn hóa được minh họa bởi X. Điều này cho thấy vẫn còn thiếu API dựa trên chuẩn sử dụng để tích hợp các khả năng, như các chức năng OSS/BSS vào SDP. 1.1.2 Các thành phần của SDP Môi trường thực thi dịch vụ Môi trường kiến tạo dịch vụ Môi trường triển khai dịch vụ Môi trường quản lý dịch vụ Môi trường thực thi dịch vụ Môi trường thực thi dịch vụ hỗ trợ để thực thi nền tảng phân phối dịch vụ và các dịch vụ giá trị gia tăng. Nó bao gồm các dịch vụ sau: Dịch vụ điều khiển Soạn thảo dịch vụ Các dịch vụ tích hợp
  13. 11 Môi trường kiến tạo dịch vụ Môi trường kiến tạo dịch vụ cung cấp một môi trường phát triển cho các nhà phát triển phần mềm để tạo ra các dịch vụ mới và mở rộng các dịch vụ đã có. Nó làm đơn giản hóa việc tạo ra và giảm thời gian tới thị trường của dịch vụ mới. Môi trường kiến tạo dịch vụ bao gồm: Thư mục dịch vụ Môi trường phát triển tích hợp (IDE) Kit phát triển phần mềm (SDK) Môi trường triển khai dịch vụ Để phát triển nhanh chóng các dịch vụ mới dưới nền tảng phân phối dịch vụ là rất quan trọng, và cũng quan trọng để các nhà mạng quản lý việc triển khai các dịch vụ mới trong mạng lõi hoặc mạng triển khai nội dung. Môi trường triển khai cung cấp các chức năng sau: Các công cụ triển khai Hỗ trợ mạng triển khai nội dung Quản lý tài nguyên Môi trường quản lý dịch vụ Môi trường quản lý dịch vụ cung cấp các chức năng quản lý mở rộng tất cả các lớp trong kiến trúc nền tảng phân phối dịch vụ. Nó cung cấp cho nền tảng phân phối dịch vụ và các dịch vụ giá trị gia tăng các chức năng sau: Quản lý lỗi Cấu hình Kế toán tài chính Hiệu suất thực hiện Bảo mật 1.1.3 Kết cấu nền tảng phân phối dịch vụ Kết cấu nền tảng phân phối dịch vụ tổng quát được minh họa trong Hình 1.2 [20]. Hình 1.2 biểu diễn các lớp và miền tạo thành nền tảng kết cấu SDP. Các lớp và miền biểu diễn thiết kế phân lớp cấu trúc hóa kết cấu độc lập với các công nghệ. Các lớp phân cấp khả năng dịch vụ, trong khi các miền phân phối các lớp và khả năng dịch vụ của chúng thông qua các ranh giới cơ sở hạ tầng khác nhau. Các lớp trên của kết cấu SDP phân tách tầng dịch vụ mô hình tham chiếu NGN, trong khi đó các lớp thấp hơn là cho tầng mạng. Phân loại các khả năng dịch vụ cung cấp các chức năng đơn giản ra nguồn bên ngoài thành lớp dịch vụ đơn giản. Ta phân loại các khả năng dịch vụ cung cấp chức năng phong phú tới các khả năng dịch vụ đơn giản thành lớp dịch vụ trung bình. IMS định nghĩa các khả năng dịch vụ hướng mạng hỗ trợ Parlay và OMA bằng cách cung cấp một
  14. 12 giao diện với chức năng mạng. Ta phân loại các khả năng dịch vụ cung cấp các chức năng phong phú hơn cho các khả năng dịch vụ trung gian vào lớp dịch vụ phức tạp. Hình 1.2: Kết cấu SDP biểu diễn các lớp và miền Trong kiến trúc SDP, người ta chia các lớp theo vùng quan tâm khác nhau. Miền người dùng minh họa khách hàng của mỗi ứng dụng; miền này bao gồm phần cứng và phần mềm đầu cuối truy cập mạng và các ứng dụng. Miền thuê bao dịch vụ biểu diễn doanh nghiệp sử dụng IT cung cấp các ứng dụng đa dạng. Miền cung cấp kết nối là một công ty hay doanh nghiệp viễn thông cung cấp kết nối vật lý cho người sử dụng truy cập các ứng dụng. Miền mạng hội tụ là tổng hợp các phương thức truyền dẫn bao gồm viễn thông, doanh nghiệp và Internet. Miền nền tảng dịch vụ biểu diễn “trái tim” của kiến trúc SDP. Miền này bao gồm tổng hợp các dịch vụ đơn giản, trung bình và phức tạp. Miền doanh nghiệp biểu diễn một hoặc nhiều doanh nghiệp sử dụng IT truy cập các giao diện khả năng dịch vụ SDP. Miền OSS/BSS (hệ thống hỗ trợ vận hành/ hệ thống hỗ trợ kinh doanh) biểu diễn tổng hợp các hệ thống quản lý viễn thông. 1.2 Mạng hướng dịch vụ SON 1.2.1 Giới thiệu mạng hướng dịch vụ Thành công của một ứng dụng SOA phụ thuộc hầu hết ở khả năng cơ sở hạ tầng truyền bản tin giữa các thành phần trong SOA. Mạng đóng vai trò then chốt trong truyền dữ liệu nhanh chóng và tin cậy, SOA còn cần nhiều hơn thế nữa. Nếu một thành phần SOA đơn lẻ bị lỗi hay quá tải, các bản tin sẽ phải cân bằng tải tới các thành phần khác cung cấp cùng dịch vụ. Khi thành phần mới được thêm vào, nâng cấp hay di chuyển,
  15. 13 các bản tin cần định tuyến theo. Cần đánh giá khả năng hoạt động, lưu lượng SOA quản lý, và hoạt động nhạy với xử lý như giải mã SSL và chuẩn hóa XML cần đưa ra ngoài tải của các thành phần SOA nhằm cải thiện dung năng của chúng. Không dịch vụ nào có thể cung cấp bởi chính bản thân các thành phần SOA. Thay vào đó, xuất hiện một khái niệm mới – Mạng hướng dịch vụ SON. SON xác nhận truyền bản tin là vai trò của mạng, nhưng các dịch vụ mới cần hỗ trợ nhu cầu của các ứng dụng SOA. Về bản chất, SON xác định mạng cần trở nên nhanh, linh hoạt như các ứng dụng SOA mà nó hỗ trợ. SON không nâng cấp phá bỏ hoàn toàn phần cứng mạng hiện có. Thay vào đó, SON được tạo ra bởi xây dựng các ứng dụng ở đỉnh của mạng hiện tại, sử dụng các giải pháp đã được chứng tỏ và kỹ lưỡng để nhận ra sự hứa hẹn đầy đủ của SOA. SON là một kiến trúc mới nổi cho phép các thiết bị mạng hoạt động tai lớp ứng dụng với các đặc trưng giảm tải (offloading), tích hợp giao thức và định tuyến dựa trên nội dung. Bằng cách thêm vào sự nhận ra ứng dụng vào kết cấu mạng, SON có thể cung cấp độ lợi lớn tính trên hiệu suất và sự hiệu quả toàn cục và cho phép tích hợp các môi trường không đồng nhất. Chúng ta xem tập các hoạt động mức ứng dụng phía mạng này như các chức năng của SON. Trong số khác, chức năng SON cung cấp ba lợi ích chính: ảo hóa dịch vụ, triển khai cục bộ và cải thiện quản lý. 1.2.2 Lợi ích Ảo hóa dịch vụ Ảo hóa dịch vụ ghép trong suốt tập các dịch vụ với các tài nguyên back-end được bảo vệ thực tế cung cấp dịch vụ. Một thiết bị SON có thể phục vụ như một proxy cho dịch vụ thực tế bởi che các tài nguyên bên trong thông qua chuyển đổi XML và các kỹ thuật định tuyến. Thiết bị SON cũng có thể tận dụng để quản lý các chính sách bảo mật và từ chối dịch vụ (DoS) cho các yêu cầu tới. Triển khai cục bộ Bởi triển khai các chức năng nhất định trong cơ cấu mạng, các thiết bị SON có thể được dự trữ và tối ưu để xử lý các tải làm việc đơn nhất. Các server được cung cấp và tối ưu hóa có thể dẫn tới hiệu quả cao hơn và có thể hiệu quả hơn về giá thành hơn là cung cấp toàn bộ doanh nghiệp những khả năng này. Cuối cùng, lợi ích hiệu suất có thể đạt được nhờ triển khai cục bộ trong các chức năng SON cùng vị trí. Sự cục bộ cũng có lợi tại các lớp thấp hơn của hệ thống, như trong sử dụng bộ nhớ cache. Cải thiện quản lý Chức năng giảm tải trong mạng cho phép tập trung, và do đó đơn giản hóa quản lý các chức năng và cấu hình tương ứng. Ví dụ, bảo mật, caching và các chính sách định tuyến tất cả có thể quản lý tập trung tại các thiết bị SON so với sự không tập trung qua một cluster của các server doanh nghiệp.
  16. 14 1.2.3 Chức năng Ba ví dụ chức năng SON gồm giảm tải, tổng hợp dịch vụ và định tuyến thông minh lần lượt được trình bày ở phần sau đây: [17] Chức năng giảm tải Các hoạt động liên quan đến bảo mật là cần thiết trong môi trường ứng dụng trên Internet; và cũng đúng với các môi trường hướng dịch vụ tập trung tài liệu. Như server HTTP, một thiết bị SON có thể dành riêng để xử lý các chức năng mật mã. Điều này cho phép thiết bị tối ưu xác thực các chứng chỉ số trong ngữ cảnh bảo mật WS. Chúng ta minh họa điều này trong Hình 1.3, ở đó các thiết bị SON chặn các vỏ SOAP bảo mật WS, thực hiện chức năng mật mã thích hợp, và chuyển tiếp các yêu cầu tới nhà cung cấp dịch vụ. Hình 1.3: Ví dụ chức năng giảm tải Một thiết bị SON cũng có thể thực hiện một chức năng bảo mật như tường lửa để xác nhận các yêu cầu dịch vụ (ví dụ, chống lại một tài liệu WSDL hay XSD tương ứng) trước khi chuyển tiếp chúng tới máy chủ doanh nghiệp để xử lý. Những kiểm tra này sẽ bảo đảm rằng chỉ các yêu cầu dịch vụ định dạng tốt được chuyển tiếp. Điều này ngăn chặn tấn công DoS và bảo đảm rằng các máy chủ được bắt gặp chỉ các yêu cầu dịch vụ có xác thực. Dạng giảm tải hiệu quả nhất là giảm tải chức năng đầy đủ nơi mà các yêu cầu dịch vụ có thể hoàn toàn thỏa mãn trong các thiết bị SON. Caching phản hồi dịch vụ động, một kỹ thuật hoàn thành điều này, là hiệu quả nhất cho tương tác phần lớn là đọc nơi mà các yêu cầu không cập nhật trạng thái back-end hay cơ sở dữ liệu. Ví dụ, các yêu cầu dịch vụ tìm các chỉ số chứng khoán, nơi mà các giá trị đặt lệnh được cập nhật mỗi năm phút, là phù hợp cho loại giảm tải này. Nếu thực hiện đúng, một phần lớn của lưu lượng đọc có thể được phục vụ hoàn toàn bởi các thành phần caching thích hợp, do đó giảm tải trên các máy chủ cơ sở dữ liệu doanh nghiệp. Một chính sách cache bao gồm các quy luật định nghĩa các kết quả từ những yêu cầu dịch vụ cụ thể được cache như thế nào.
  17. 15 Tổng hợp dịch vụ Hình 1.4 minh họa khía cạnh tổng hợp dịch vụ của thiết bị SON trong đó một cửa hàng bán lẻ công cụ yêu cầu tập hợp các phần bởi gọi ra một yêu cầu dịch vụ quay lại văn phòng chính. Văn phòng chính đã triển khải thiết bị SON trong cơ cấu mạng lựa chọn những phần nhà cung cấp tốt nhất và chuyển tiếp các yêu cầu dịch vụ tới nhà cung cấp đó. Tuy nhiên, trong trường hợp này, lược đồ XML của các cửa hàng công cụ là khác biệt phụ thuộc vào nhà cung cấp được lựa chọn. Thiết bị SON là có khả năng chuyển đổi thứ tự ban đầu tới lươc đồ của các nhà cung cấp tham gia, trong trường hợp này WidgetsRUS. Các nhà sản xuất công cụ khác có vẻ sẽ yêu cầu các lượt đồ khác, yêu cầu chức năng SON để áp dụng chuyển đổi XSLT thích hợp phụ thuộc vào nhà cung cấp. Hình 1.4: Ví dụ tổng hợp dịch vụ Vì phần lớn dữ liệu công ty ngày nay tồn tại trong cơ sở dữ liệu máy tính lớn, tổng hợp dịch vụ cũng cung cấp khả năng giao diện với các hệ thống kế thừa đã có, đưa ra một kiến trúc hệ thống linh hoạt hơn để chuyển dịch về phía môi trường hướng dịch vụ. Điều này làm tăng số lượng của các người sử dụng có thể tận dụng ưu điểm của những chương trình và dữ liệu này và mở rộng sự vươn xa của SON và SOA tới doanh nghiệp. Định tuyến thông minh Định tuyến dựa trên nội dung, như định tuyến dựa trên độ ưu tiên, được dẫn động từ tài liệu chính sách. Các chính sách điển hình áp dụng một quy tắc chống lại một vài phần của một yêu cầu dịch vụ (tiêu đề hay nội dung), và kết quả là khởi tạo một token. Token sau đó được sử dụng để tìm kiếm một địa chỉ máy chủ tương ứng trong bảng định tuyến. Ví dụ, chính sách CBR có thể được tạo ra bởi kết hợp loại cổng và tên hoạt động của một dịch vụ và ghép nó với một máy chủ nhất định. Trong một thiết bị SON, CBR có thể được nhận ra nhờ sử dụng biểu diễn dựa trên XPath để xác định đích của yêu cầu như chỉ ra trong Hình 1.5.
  18. 16 Hình 1.5: Ví dụ định tuyến thông minh CBR cũng cho phép sự đồng dạng giữa một lớp các dịch vụ và máy chủ phục vụ yêu cầu; khái niệm này có tên là phân vùng dịch vụ. Hình 1.4 minh họa lớp phân vùng dịch vụ này. Phân vùng dịch vụ có thể được sử dụng như nền tảng để định vị thắt cổ chai xảy ra khi các ứng dựng Xử lý giao dịch trực tuyến lưu lượng lớn mà đọc và viết dữ liệu vào cơ sở dữ liệu là nhiều và yêu cầu tối đa về sự ổn định và sẵn có của dữ liệu. Các ví dụ của những hệ thống như vậy bao gồm các hệ thống thương mại, ngân hàng, đặt chỗ và bán đấu giá trực tuyến. Trong khi một thiết bị SON định vị một cách chiến lược cho phép phân vùng dịch vụ, giá trị thực tế được đưa vào các máy chủ ứng dụng doanh nghiệp nơi mà các dịch vụ được triển khai. Ví dụ, các ứng dụng dựa trên dịch vụ bây giờ có thể giả định rằng sự biến đổi dịch vụ của chúng không chạy nơi nào khác trong cluster máy chủ doanh nghiệp. Các ứng dụng sau đó có thể cache tương tác tổng hợp mà không xử lý overhead của sự ổn định dữ liệu duy trì trong cluster đó. Phân vùng dịch vụ cũng cho phép các kỹ thuật tối ưu khác như phân đợt dữ liệu nơi mà việc chèn, cập nhật và xóa có thể thực hiện theo khối với cơ sở dữ liệu. 1.3 Các vấn đề cần nghiên cứu 1.3.1 Xây dựng các thiết bị SON Xem xét thực hiện Một sự cân bằng tồn tại giữa hiệu suất thực hiện các chức năng SON trong thiết bị mạng với phần mềm mạng, sự mở rộng của các chương trình bất kỳ với bảo mật cứng của một ứng dụng dựa trên các kỹ thuật bảo mật chuẩn, và sự linh hoạt của một giải pháp phần mềm với tăng tiêu thụ của thiết bị; sự cân bằng này được minh họa trong hình 1.6. [17] Vì phải quan tâm để bảo đảm rằng chứng năng SON cải thiện hiệu suất tổng của kiến trúc, chứ không phải làm giảm đi, chúng ta tin rằng các thiết bị mạng có các chức năng SON có thể tận dụng phần mềm được làm cứng và các giải pháp phần cứng chuyên biệt và vượt qua giới hạn kinh nghiệm trong các cố gắng trước đây để giới thiệu sự nhận
  19. 17 diện thiết bị trong kết cấu mạng. Các chức năng SON có thể sắp xếp trong một switch hay router. Chức năng SON cũng có thể triển khai trong một thiết bị cứng hóa riêng lẻ. Hình 1.6: So sánh tiếp cận phần mềm và thiết bị Robustness Thiết bị SON sẽ tỉ lệ để hỗ trợ số lượng các yêu cầu lớn để xử lý đồng thời. Nó sẽ robust để overload các điều kiện, tiếp tục ưu tiên và xử lý các yêu cầu có độ ưu tiên cao và bỏ các yêu cầu có độ ưu tiên thấp hơn trong khi hoạt động trong chế độ quá tải. Điều khiển lối vào bảo đảm rằng máy chủ luôn luôn hoạt động trong chế độ ổn định; thậm chí trong điều kiện quá tải, máy chủ có thể tỉ lệ và tiếp tục cung cấp các dịch vụ khác biệt tới người dùng. Để cho một thiết bị SON cung cấp các dịch vụ thuận lợi với những người sử dụng yêu cầu, phải định nghĩa một chính sách liệt kê việc xử lý khác nhau với các yêu cầu để nhận. Chính sách này sẽ định nghĩa các chiến lược ưu tiên lưu lượng với cả điều kiện bình thường và quá tải. Vì các yêu cầu phải phân loại trước khi chúng có thể được ưu tiên, cần thiết trong điều kiện quá tải để hệ thống có thể tiếp tục xử lý các yêu cầu độ ưu tiên cao trong khi có thể bỏ các yêu cầu độ ưu tiên thấp hơn. Do đó, các phương pháp nhanh nhất để phân loại các gói tin đến là cần thiết. Sự phân loại có thể dựa trên thông tin lớp mạng hay thông tin cao hơn nằm phía nội dung XML. Phần cứng chuyên dụng Một lợi ích chính của SON là nó có thể tận dụng các phần cứng chuyên dụng, như mã hóa tăng tốc phần cứng hay chức năng xử lý XML, để nâng cao hiệu năng tổng của thiết bị. Tuy nhiên, thiết bị SON sẽ chứa các thành phần phần mềm xử lý các yêu cầu liên kết với các thiết bị phần cứng đã có. Vì các thành phần này có thể chặn việc gọi các dịch vụ từ xa, sẽ quan trọng để bảo đảm rằng một kỹ thuật hợp tác robust và hiệu quả giữa các thành phần phần cứng và phần mềm đã có này, như kỹ thuật này sẽ là cốt yếu đối với sự ổn định và hiệu suất tổng của thiết bị SON. Bảo mật
  20. 18 Như trong các mạng chủ động, SON cung cấp chức năng phần mềm sẽ thực thi trong cơ cấu mạng. Tuy nhiên, với sự giới thiệu của các chuẩn mở như XML và bảo mật WS, chúng ta tin tưởng rằng các thiết bị SON sẽ không có các vấn đề bảo mật tương tự như mạng chủ động. Sự sử dụng XML trong hoạt động mạng nảy sinh các câu hỏi nghiên cứu mới liên quan đến cách các chuẩn mở như XML và WS có thể tận dụng cùng nhau trong một thiết bị SON để tạo ra một thiết bị làm cứng chống lại các tấn công XML và DoS dựa trên WS. Một phương pháp để tận dụng các kiểm tra định dạng tốt và xác thực lược đồ XML với tất cả các tài liệu đến để bảo đảm rằng chỉ các yêu cầu xác thực được tiếp tục tới thiết bị để xử lý tiếp. Cấp phát tài nguyên Thiết bị SON sẽ là thích nghi, thay đổi mô hình thực thi của nó để hỗ trợ các kiểu thành phần phần mềm khác nhau để cực đại hiệu quả của hệ thống. Chúng tôi tin rằng các kỹ thuật đồng thời sẽ là một thành phần có ý nghĩa của cấp phát tài nguyên trong thiết bị SON thích nghi và có thể thay đổi. Kỹ thuật đồng thời có hiệu quả rõ ràng trong hiệu suất và hiệu quả tổng của một thiết bị. Các dịch vụ internet là duy nhất bởi vì chúng yêu cầu sự đồng thời cực lớn nhưng cũng chặn lại trong khi đợi các tài nguyên không có sẵn. Đó là sự kết hợp duy nhất của các yêu cầu gợi ý kiến trúc hybrid có thể sử dụng để triển khai lợi ích của các kỹ thuật đồng thời khác nhau. 1.3.2 Kết nối các thiết bị SON Sự quản lý Cụ thể, ta dự đoán trước rằng các ứng dụng doanh nghiệp của tương lai sẽ bắt đầu tận dụng các lớp triển khai SON phân phối nơi mà số lượng lớn các thiết bị SON phối hợp với các ngang hàng sử dụng các chính sách ứng dụng riêng mạng rộng. Các thiết bị SON sẽ phối hợp với các ngang hàng của chúng để xác định điểm thích hợp trong mạng để thực hiện các thay đổi cấu hình dựa trên mạng và các điều kiện ứng dụng chiếm ưu thế. Cấp phát tài nguyên Chúng ta hình dung các thiết bị SON sẽ cần cộng tác để cấp phát hiệu quả các tài nguyên của chúng để hiệu quả các chính sách dịch vụ của ứng dụng cụ thể như đã kể ở trên. Giá (price) được sử dụng để phân biệt các dịch vụ dựa trên các yêu cầu chất lượng dịch vụ của chúng. 1.4 Kết luận chương Để đáp ứng được các nhu cầu ngày càng đa dạng về mặt dịch vụ, cần phải có các hệ thống hướng dịch vụ, cho phép tạo, cung cấp và sử dụng dịch vụ thông tin truyền thông một cách mềm dẻo và thuận tiện. Chương này đã trình bày yêu cầu tất yếu của nền tảng phân phối dịch vụ được xây dựng tại đỉnh của mạng hiện tại, không làm thay đổi kết cấu mạng, cung cấp các dịch vụ đa dạng cho khách hàng.
  21. 19 Với những lợi ích to lớn mà mạng hướng dịch vụ mang lại, yêu cầu đặt ra là cần xây dựng các thiết bị cho mạng hướng dịch vụ, kết nối và những vấn đề cần quan tâm trong quá trình xây dựng và phát triển mạng. Mạng hướng dịch vụ và nền tảng phân phối là cơ sở phát triển của mạng hiện tại, tách biệt giữa cơ sở hạ tầng và nhà phát triển dịch vụ không những nâng cao khả năng phát triển dịch vụ, hiệu quả mạng mà còn giúp quản trị mạng và dịch vụ dễ dàng hơn.
  22. 20 Chương 2: SO SÁNH CÁC GIẢI PHÁP MẠNG CUNG CẤP DỊCH VỤ 2.1 Kiến trúc IMS cho mạng thông tin di động IMS (IP multimedia subsystem) là một chuẩn dựa trên mạng IP sử dụng cả mạng cố định và không dây, cung cấp các dịch vụ đa phương tiện bao gồm: audio, video, thoại, văn bản và dữ liệu. Các dịch vụ này có thể chia thành ba loại sau: [19] Dịch vụ không yêu cầu thời gian thực như tin nhắn đa phương tiên MMS. Dịch vụ gần thời gian thực như Push to talk, dịch vụ game. Dịch vụ thời gian thực như thoại, audio/video, hội nghị truyền hình. IMS có khả năng hội tụ mạng cố định và không dây FMC. IMS thực hiện được điều này nhờ cấu trúc phân lớp ngang tức là các lớp độc lập với nhau. Lớp đầu tiên là lớp mạng, truyền tải dung lượng báo hiệu và dữ liệu. Lớp này bao gồm các Switch, Router, Media GateWay, Media Server. Lớp này có thể kết nối tới nhiều loại mạng khác nhau: Mạng đi động 3G (UMTS, CDMA, WCDMA) Mạng di động 2.5G (GPRS) Mạng IP có dây (xDSL, Cable) và không dây (WLAN, WiMAX) PSTN, IDSL Lớp thứ hai là lớp điều khiển. Bao gồm các phần tử của mạng báo hiệu (CSCF, HSS, MGCF ), có khả năng điều khiển phiên chung, điều khiển luồng dữ liệu và điều khiển luồng truy nhập thông qua các giao thức báo hiệu như SIP, Diameter, H248 (MEGACO). Lớp này là mạng lõi của IMS. Lớp thứ ba là lớp dịch vụ. Lớp này bao gồm các Server ứng dụng AS như Server ứng dụng SIP, Server truy nhập dịch vụ dành cho nhà cung cấp thứ 3 và các điểm điều khiển dịch vụ. IMS điều khiển dịch vụ thông qua mạng thuê bao nhà và các thành phần mạng báo hiệu trong lớp dịch vụ và lớp điều khiển. [14] IMS được thiết kế và phát triển thông qua khung chuẩn hóa công nghiệp: 3GPP, và hiện nay điều khiển công việc chuẩn hóa IMS của tương lai, thông thường được chấp nhận bởi 3GPP2 TIPSAN ATIS và Ban chuẩn hóa viễn thông, hiệp hội viễn thông quốc tế (ITU-T) NGN, tập trung vào các mode truy cập bổ sung của chúng (có dây, Wi-Fi, tế bào tiên tiến ). IMS phản chiếu các nguyên lý trong khái niệm kiến trúc hướng dịch vụ; trong đó nó được phân tích trong một tập các thực thể chức năng được định nghĩa với sự đa dạng của các giao diện đã định nghĩa. Tuy nhiên chúng hoạt động theo cách thức được điều khiển chặt chẽ hơn nhiều để phân phối một số các dịch vụ lõi của IMS như điện thoại đa phương tiện. Các ứng dụng khác có thể được thêm vào đỉnh của các giao diện hở thông qua các máy chủ ứng dụng IMS sau đó có thể tham gia điều khiển hoặc điều phối các phiên và chức năng IMS (enabler). Mặc dù IMS hầu hết được thiết kế với mạng và ít từ dịch và và nền tảng tạo trải nghiệm người dùng.
  23. 21 Tại lõi của IMS định nghĩa một lớp mạng (Mặt phẳng giao vận và điều khiển) và một lớp dịch vụ (Mặt phẳng dịch vụ). Các dịch vụ IMS có thể phát triển (biên soạn) sử dụng các enabler dịch vụ IMS kết nối cùng nhau theo dãy (một khái nhiệm SOA) thông qua một quy trình dịch vụ. Dù cho dãy này được thực hiện sử dụng Bộ quản lý tương tác dung năng dịch vụ (SCIM) IMS (‘mức thấp hơn’) hay tại một ‘mức cao hơn’ sử dụng các công cụ như Ngôn ngữ thực thi quá trình doanh nghiệp (BPEL) là điển hình để lại cho các nhà phát triển dịch vụ tùy ý. Vì vậy có thể dễ dàng chấp nhận rằng IMS “tận dụng các khái niệm SOA”; tuy nhiên IMS không phải là một sự trừu tượng của SOA – vì một số dịch vụ IMS được ghép chặt chẽ với các chức năng lớp mạng bên dưới. Các giao diện được định nghĩa của IMS tập trung vào cách các chức năng tương tác với nhau theo một cách cụ thể chỉ rõ, hơn là cho các chức năng này bộc lộ một giao diện vì thế chúng có thể được bố trí hay dàn dựng theo một cách được điều phối mà không cần các hiểu biết từ trước của ngữ cảnh dịch vụ. Một phương pháp SOA điển hình sẽ tách biệt sự tổng hợp hay soạn của các dịch vụ bên dưới từ định nghĩa dịch vụ của chúng (và hợp đồng). Để so sánh thêm, có thể hình dung rằng một dịch vụ điện thoại IMS có thể được miêu tả như một script soạn thảo dịch vụ SOA, thay vì luồng cuộc gọi được định nghĩa. Tuy nhiên phương pháp IMS gây ra một cơ cấu kiến trúc IMS robust để xử lý với các hành vi, luồng cuộc gọi xác thực và do đó bảo đảm dịch vụ của hạ tầng và chất lượng dịch vụ tới người dùng. Khả năng quan trọng nhất để biết thuê bao người dùng cuối và quản lý hồ sơ tới các nhu cầu thích hợp các dịch vụ đưa ra để tận dụng và giữ như một thuộc tính quan trọng cho SON đa miền. 2.2 Kiến trúc SOA cho doanh nghiệp SOA tận dụng trao đổi dữ liệu dịch vụ ghép cặp lỏng để thực hiện các quá trình doanh nghiệp. Những quá trình doanh nghiệp này có thể là các chuỗi giá trị dịch vụ phức tạp như Quản lý đặt hàng hay các quy trình dịch vụ đơn giản hơn như một dịch vụ Đặt giá chứng khoán dựa trên SMS. Các enabler dịch vụ mặt phẳng dịch vụ IMS có thể được tích hợp vào luồng dịch vụ truyền thông đa dạng bằng cách đơn giản mở rộng một dịch vụ đặt giá chứng khoán dựa trên SMS bao hàm cả khả năng “Call Broker”. Sự mở rộng này tại lõi của phương pháp thiết kế SOA, ở đó các dịch vụ đã có cũng có thể được xem xét như ‘enabler dịch vụ’ có khả năng và có thể tái sử dụng để tạo ra các dịch vụ phức tạp hơn, giàu tính năng. Service enabler (hay khối tạo dịch vụ) được ghi danh trong một Service Registry và có thể khám phá bởi các khách hàng dịch vụ. Service Registry chứa các tham chiếu đồng ý dịch vụ (hợp đồng dịch vụ) cho phép khách hàng dịch vụ xác định cấu trúc trao đổi dữ liệu và điểm cuối truy cập dịch vụ thực tế. Một trừu tượng Service Registry SOA điển hình được thực hiện sử dụng triển khai Miêu tả, khám phá và tích hợp toàn cục OASIS UDDI (Universal Description, Discovery and Integration).
  24. 22 Chấp nhận một phương pháp thiết kế SOA không chỉ thị dịch vụ Web đó, và bởi kết hợp các định nghĩa ngôn ngữ miêu tả dịch vụ web (WSDL – Web Serivice Description Language), phải được định nghĩa và sử dụng trong luồng xử lý doanh nghiệp; tuy nhiên ghép cặp lỏng và khả năng trao đổi dữ liệu của dịch vụ web cho phép chấp nhận chúng như là cơ sở thực hiện nhiều dịch vụ SOA. Thực tế dịch vụ web có thể được nhúng trong các luồng dịch vụ phức tạp định nghĩa trong BPEL, và các luồng dịch vụ BPEL trong chính bản thân chúng có thể được định nghĩa như dịch vụ web là một ví dụ khác về cách dịch vụ web đã trở thành đồng nghĩa với SOA. Vì SOA tận dụng phương pháp thiết kế ghép cặp lỏng cho quản lý (hay cai quản) dịch vụ đã nổi lên như một yêu cầu then chốt. Trong khi một service enabler có thể được định nghĩa thông qua một dịch vụ web cụ thể thí dụ WSDL đăng ký trong Registry Service SOA, người ta mong đợi rằng định nghĩa dịch vụ này sẽ tiến triển theo thời gian và dịch vụ đó ngày hôm nay có thể trở thành service enabler của ngày mai. Khả năng này yêu cầu một chức năng quản lý dịch vụ cấu trúc được áp dụng cho tất cả các định nghĩa dịch vụ để bảo đảm rằng khi một service enabler (nhà sản xuất) được điều chỉnh thì khách hàng dịch vụ thích hợp được cảnh báo về sự thay đổi và gọi ra phiên bản định nghĩa dịch vụ chính xác. Phương pháp SOA này, dù thuyết minh thông qua dịch vụ web hay các công nghệ khác (bao gồm tích hợp với web 2.0) là tương quan chặt chẽ với service enabler SON và sự cấu thành dịch vụ. Chuẩn hóa SON phải giải quyết các khía cạnh miền chéo vẫn chưa được đề cập đủ bởi các chuẩn đã có. [10] 2.3 Giải pháp WEB 2.0 cho người dùng Internet Thuật ngữ Web 2.0 được chính thức định nghĩa vào năm 2004 bởi Dale Dougherty, phó chủ tịch của O’Reilly Media, trong hội nghị tổ chức bởi O’Reilly và MediaLive International. Tim O’Reilly định nghĩa Web 2.0 như sau: Mọi thứ trên Web được gắn thẻ (tag), giúp cho việc điều hướng nhanh và dễ dàng hơn. Ngược với Web 1.0, Web 2.0 có trí tuệ tập thể của hàng triệu người sử dụng. [5] Web 2.0 nổi lên như một mô hình dịch vụ mới đạt được sức hút thị trường rất lớn (Semantic web của W3C hiện tại được xem là Web 3.0). Web 2.0 cũng tận dụng triệt để các khái niệm về “dịch vụ” cùng với các mô hình doanh nghiệp light-weight (tương tác trao đổi dữ liệu ghép cặp lỏng của SOA); tuy nhiên các dịch vụ (hay widget) Web 2.0 được thiết kế điển hình sử dụng mô hình lập trình Chuyển đổi trạng thái biểu diễn (REST – Representational State Transfer) nguyên lý cho truy cập dữ liệu và chức năng – các dịch vụ web 2.0 cũng có thể được phát triển sử dụng mô hình lập trình SOAP nhưng điều này thông thường bao gồm sử dụng trao đổi tin nhắn XML tinh vi, phức tạp hơn nhiều. REST sử dụng tương tác Giao thức truyền siêu văn bản (HTTP – Hypertext Transfer Protocol) với XML hay trọng tải JavaScript Object Notation (JSON – một định dạng trao đổi dữ liệu lightweight).
  25. 23 Thông thường, người ta chấp nhận rằng Web 2.0 về nguyên lý bao gồm (cùng với mô hình web): Nội dung tạo ra người hoặc nhóm người dùng Hiệu quả chung để tạo ra, chia sẻ, đánh giá, phát triển và chấp nhận các dịch vụ và nội dung tại tốc độ web. Khả năng trộn, tổng hợp các tài nguyên nội dung và các dịch vụ API trên web tái sử dụng trải nghiệm người dùng tối ưu hóa cao. Hòa trộn có thể xảy ra phía thiết bị hay phía máy chủ Bản beta tiếp tục, nghĩa là việc tạo ra và kiểm tra các ứng dụng và dịch vụ mới là nhanh chóng và lặp đi lặp lại cũng như việc người dùng cuối có tham gia tạo và sàng lọc dịch vụ Các mô hình không trực tiếp (nếu không được chứng minh), mà một số công ty quản lý để thành công lâu dài Vì tạo ra nội dung và trải nghiệm người dùng là các khía cạnh then chốt của web 2.0, cùng với sự thử nghiệm của các mô hình doanh nghiệp và đường cong học nhanh chóng cũng như chu kỳ tồn tại (thành công hay thất bại nhanh). Một phương pháp cơ bản là sự tin tưởng thường không được cung cấp bởi một quan hệ thuê bao hay xác thực được điều khiển mà thông qua hiệu quả chung. “Trở thành một thành viên” có thể có nhiều giá trị trong web 2.0 hơn “Có quyền”. Điều hòa những mô hình này qua ứng dụng miền chéo sẽ cần tận dụng cả các quyền mà thuê bao có mà còn quyền mà chúng được cho thông qua thành viên chung. 2.4 Giải pháp SON Khi các công ty viễn thông truyền thống tiến tới xây dựng mạng thế hệ tiếp theo, cung cấp các dịch vụ thế hệ tiếp theo, và tạo ra sự hội tụ của các phần cố định và di động, ở đó tồn tại một sự phát triển, và có thể cần thiết, phụ thuộc vào giao thức internet IP và phân phối các ứng dụng trung tâm vào IP. Sự chuyển đồi này của các mạng và dịch vụ Telco cùng với sự cạnh tranh đưa ra bởi các cơ hội mới dựa trên các công nghệ internet dẫn tới nền công nghiệp để xem xét khả năng các phía của nó, và các công nghệ bên dưới biến đổi, để đạt được các yêu cầu về khả năng mở rộng, mong đợi của người dùng, và các mô hình doanh nghiệp mang lại lợi ích. [6] đưa ra các khái niệm liên quan sau đây mà SON có thể dựa vào: Các công việc tương lai về chuẩn hóa dịch vụ cơ bản dựa trên khả năng chuyển từ dịch vụ và truy cập nhất định sang phương pháp ngang hàng. Điều này cũng dựa trên hồ sơ người dùng và trao đổi của dữ liệu người dùng qua các nhà cung cấp dịch vụ và mạng. Có nhu cầu chuẩn hóa về tương tác dịch vụ. Điều này yêu cầu việc tạo ra các định nghĩa rõ rang và các công cụ ứng dụng qua các loại dịch vụ và mạng truy cập, đặc biệt cho metadata chung.
  26. 24 Có một công nghiệp toàn cục cần cho điều phối chung về chuẩn hóa liên quan đến sự tương thích dịch vụ phát triển trong một số các tổ chức phát triển chuẩn hóa và một cấu trúc dữ liệu tái sử dụng (bao gồm hỗ trợ các đa ứng dụng) để cho phép chúng. Cũng cần điều phối sự phát triển các kỹ thuật chung, các công cụ ứng dụng, tự động hóa và nhu cầu dữ liệu (mô hình hóa, lược đồ xml ) trong ủy ban ATIS. Khi nhu cầu linh hoạt của khách hàng và các dịch vụ, giải pháp cá nhân hóa cần phân phối nhanh chóng, chu trình phát triển 18 tháng truyền thống của các Telco và các yêu cầu thuê bao khổng lồ không còn duy trì với những dịch vụ miễn phí và chi phí thấp thông qua các nhà cung cấp web. Trong khi các dịch vụ và ứng dụng dựa trên internet là linh hoạt, vẫn có một trạng thái các bản beta liên tục, nghĩa là chất lượng dịch vụ, sự tin cậy, và dư thừa là thường xuyên không hiện diện với robustness như các dịch vụ Telco truyền thống. Để duy trì tính khả thi, Telco phải xem xét kỹ thực tế phát triển (như cộng đồng mã nguồn mở, mô tả của API và sự sẵn có của các service enabler với các nhà phát triển bên thứ ba) đang phát triển mạnh mẽ trong thế giới web, và đưa ra quyết định then chốt về định hình của các mô hình phát triển tương lai để duy trì độ tin cậy cao và sự hiện diện cục bộ, trong khi cạnh tranh với sự xoay vòng, linh hoạt và khả năng mở rộng của web. 2.5 Kết luận chương Từ các phần 2.1 tới 2.4 ở trên ta có thể đưa ra bảng 2.1 so sánh các kiến trúc. Tuy nhiên những điều này có thể áp dụng khác nhau trong mỗi miền và vì vậy đây chỉ là minh họa tổng quan cách thức thiết kế mỗi miền. Bảng 2. 1: So sánh các hệ thống sẵn có IMS SOA Web 2.0 Ghi chú trong ngữ cảnh SON Các nguyên Trải nghiệm Trải nghiệm Trải nghiệm Cả 3 đều cần thiết. lý và dịch vụ ứng dụng người dùng Các dịch vụ thành phương Thiết kế theo Thiết kế theo Thiết kế theo công yêu cầu khả pháp thiết hướng nhà hướng nhà hướng người năng phân phối kế mạng, kết quả phát triển, kết dùng và cộng các ứng dụng là mạng và quả là các đồng cho việc robust và cộng tác điều khiển thuê nguyên lý kỹ tạo ra và chấp chéo đổi mới trải bao. Mạng lõi thuật SW áp nhận nhanh nghiệm người và các giao dụng trong chóng. Biên và dùng và tận dụng diện đóng vai tổng hợp các các thiết bị sự tổng hợp linh trò quan trọng. dịch vụ: đóng vai trò hoạt các service module hóa, quan trọng. enabler đa nhà tái sử dụng, cung cấp, đa miền. cộng tác, đa
  27. 25 bậc IT enabler đóng vai trò quan trọng. Tích hợp Kết cấu Trộn lẫn các Tận dụng sự cho (miền) chiều khung chiều trải nghiệm phép các dịch vụ dọc ở đó các ngang ở đó các người dùng. qua các miền (ví giao thức được API dịch vụ Một dịch vụ dụ sự phơi bày quan tâm hơn. được quan tâm được thiết kế IMS) với khả năng hơn. nhờ tận dụng sử dụng các công sự vượt trội cụ sáng tạo nhanh các đám mây chóng. của công cụ web, các script, nội dung khi yêu cầu. Thiết kế bởi Cho phép bởi Tận dụng các Chuẩn hóa SON chuẩn hóa, các chuẩn IT công nghệ cần để tận dụng thiết kế và đưa SW mở phát (phần mềm) sức mạnh đang vào làm việc triển lặp lại các mở và các tăng lên của những thông qua hợp ứng dụng tạo chuẩn web lõi. người thực hiện và tác nhiều miền, ra với các dịch Thử nghiệm và cộng đồng để cho phân phối tới vụ được đưa ra tinh lọc các nó được chấp nhận người dùng khi (từ SW tới dịch dịch vụ, mở ra nhanh hơn. Đặc đã được thử vụ). Một vài để được chấp biệt cho phép khả nghiệm, các mức của nhận, mở rộng năng thử các phần dịch vụ tính interop phần bởi thực hiện, dịch vụ nhanh toán độ trễ (từ lớn đạt được tinh lọc các chóng và theo yêu stds tới dịch trong một miền chuẩn sau (từ cầu, trong khi vẫn vụ). đơn. khi chấp nhận giữ được các mục tới chuẩn). đích tương tác Thường đi tới mạnh qua các nhờ đổi mới miền. bên trong một miền đơn không yêu cầu tương tác. Kết nối, Lập trình, tái Sáng tạo, sự Mục đích của SON robustness. sử dụng. Tổng đổi mới. là tăng tốc sáng tạo
  28. 26 Tiêu điểm Một kích thước hợp các dịch Người dùng tối ra các dịch vụ tận trải nghiệm phù hợp tất cả vụ doanh ưu hóa, tạo ra dụng robustness và dịch vụ các dịch vụ nghiệp thích nội dung, biến sự khác biệt của truyền thông, nghi và linh đổi các ứng mạng thông qua một số dịch vụ hoạt thông qua dụng, chia sẻ lập trình ứng dụng. nội dung. Dịch phần khám phá với cộng đồng Quan trọng cho vụ không định nhanh, SaaS và cộng tác, cải các chuẩn SON nghĩa bởi thiện xem xét tầm quan người dùng trọng của “nội cuối. dung” và không chỉ kênh “điều khiển”. Tương tác Tương tác Tương tác Các nguyên lý phiên thiết bị - dịch vụ máy trình duyệt REST có thể áp thiết bị chủ - máy chủ máy khách – dụng với tương tác máy chủ máy chủ - máy chủ. Khái niệm phiên sẽ áp dụng qua miền trên SON, cũng như nhu cầu cho tương tác service enabler – service enabler. Các yêu Telco phân IT phân loại Web phân loại, Điều hòa QoE cho cầu nền loại QoS, thời khả năng mở bản beta liên phân phối các ứng tảng phân gian thực, trễ rộng, 100K tục, nỗ lực tối dụng SON miền phối minh thấp, 100K thứ/ ngày, lưu đa, lên tới hàng chéo. Tinh lọc các họa thứ/ giây, sẵn trữ. triệu hit/ ngày. chuẩn cho lập trình có và tin cậy. SW để xem xét QoS tại mức ứng dụng. Các mô Quan hệ, sử Giao dịch và Mô hình Khả năng cho các hình doanh dụng dịch vụ, quan hệ với không trực chuẩn con cho nghiệp và hỗ trợ thuê bên thứ 3 các tiếp, không hỗ phép cải tiến các lưu thông bao trực tiếp. ứng dụng. trợ, thường rẻ/ mô hình doanh thương gặp miễn phí cho nghiệp là quan người dùng trọng. Tạo ra dịch cuối. vụ thành phần và nhiệm vụ phân phối cho phép
  29. 27 người chơi thuận lợi cải tiến. Khả năng biết người dùng cuối/ thuê bao cần là mở và có thể cho phép qua các miền (ví dụ: hồ sơ tập hợp lại). Mô hình tin Mô hình bảo Tận dụng các Các mô hình Chia sẻ các cậy miền mật gắn liền. mô hình bảo phân mảnh (ví enabler qua các Trong nhiều mật IT (ví dụ dụ bảo mật miền SON và miền SP: các WS, Id, chính Web, Id web, người dùng SON thuê bao có thể sách), các đối quy tắc cộng tạo ra các thách kết nối hay tác thứ 3 có thể đồng ), bất thức cho các chuẩn chuyển vùng. kết hợp hay ký ai cũng có xác thực, quyền “Có đăng ký cung cấp các thể sử dụng. riêng tư, hồ sơ thuê bao” cung dịch vụ. “Là “Là một thành cần áp dụng và cấp sự tin cậy. một đối tác”. viên cộng điều hòa các mô đồng” dẫn tới hình tin cậy cho một số tin cậy. các ứng dụng SON. Môi trường Các chính sách Kết cấu dịch Trình duyệt Tóm tắt thế giới triển khai và thành phần vụ AS soạn như một hộp giao thức vào các và tạo ra tương tác AS dịch vụ/ liên chứa thực thi, API hòa trộn. dịch vụ nội vùng, SDP SDP. SDK, API hòa nội, IMS trộn/ GUI. Xây dựng dịch Xây dựng dịch Xây dựng dịch SON phải tạo điều vụ kiểu bottom vụ theo chiều vụ kiểu top kiện tái sử dụng và up từ mạng. ngang từ tái sử down từ người trải nghiệm người Các nhà phát dụng SW. Kỹ dùng. Các nhà dùng dẫn tới việc triển cần là các thuật SW hiện phát triển cần tạo ra dịch vụ. Các chuyên gia đại (hướng đối là các chuyên chuẩn SON cần viễn thông để tượng và dịch gia trải nghiệm cho phép thiết kế viết ứng dụng, vụ ). Ứng người dùng, dịch vụ và trải và học các giao dụng thiết kế thường làm nghiệm người thức và luồng thông qua dịch việc với cộng dùng độc lập nhờ cuộc gọi. vụ web sau đó đồng. Các đó các service được triển khai công cụ web enabler là tương trên các kiến và gadget được quan. Các phần
  30. 28 trúc đa bậc tận dụng phía dịch vụ cần làm (như SDP). biên cùng với việc qua các miền, kiến trúc web. serice enabler cần trở thành một phần của toolbox cloud, vì vậy cung cấp SDK đơn miền là chưa đủ. Các công SIP, Parlay, Dịch vụ web, REST, Ajax, nghệ nổi RTP BPEL, XML RSS bật điển hình Tiêu điểm Phòng mạng. OSS/ BSS Phòng IT và SON phải tận dụng tổ chức SP web. mạng và IT.
  31. 29 Chương 3: ĐÁNH GIÁ GIẢI PHÁP CÔNG NGHỆ CỦA CÁC HÃNG VÀ ỨNG DỤNG Ở VIỆT NAM 3.1 Giải pháp IMS của các hãng và ứng dụng ở Việt Nam 3.1.1 Alcatel - Lucent Mô hình giải pháp IMS của Alcatel như trong hình 3.1. Hình 3. 1: Mô hình giải pháp của Alcatel [4] Các thành phần chính trong giải pháp trên của Alcatel bao gồm: [4] Server ứng dụng đa phương tiện (MMAS – Multimedia Application Server): MMAS có thể cung cấp các dịch vụ lớn và linh hoạt dựa trên giao thức SIP, giao diện APT, các công nghệ Java, J2EE. Nó cũng cung cấp các giao diện kết nối tới nhà cung cấp dịch vụ thứ 3 sử dụng các dịch vụ Web, SIP, OSA/Parlay và nó cũng có một giao diện điều khiển dịch vụ ISC. Server cuộc gọi đa phương tiện (MMCS – Multimedia Call Server): Với chức năng điều khiển phiên qua giao thức SIP. MMCS nằm giữa IMS và các mạng truy nhập (GPRS, UMTS). MMCS có khả năng quản lý tài nguyên và QoS. Server phương tiện và cầu hội nghị: Cung cấp dịch vụ thoại và hội nghị truyền hình. Quản lý mạng và dịch vụ: Quản lý tất cả các phần tử mạng và một số chức năng khác như QoS. Hội tụ tính cước: Tính cước, các dữ liệu xử lý phần cúng và và các hệ thống back- office. Các đặc điểm chính của giải pháp: Hỗ trợ nhiều dịch vụ đa phương tiện: Các dịch vụ chất lượng cao như hội nghị truyền hình, PoC, VoIP
  32. 30 Hỗ trợ nâng cao các dịch vụ mới: Các công ty thứ ba có thể đưa ra các dịch vụ mới, các nhà cung cấp có thể đưa ra các dịch vụ dễ dàng dựa trên các công nghệ mới như SIP, Java 2 (J2EE), giao diện lập trình mở API. Điều này giúp triển khai các dịch vụ nhanh chóng hơn. Nâng cao chất lượng dịch vụ điện thoại, hội tụ các dịch vụ: Nâng cao hiệu suất điều khiển và kiểm soát cơ sở hạ tầng mạng, từ đó nâng cao chất lượng dịch vụ điện thoại. Việc thương mại hóa sẽ tạo nên sự hội tụ các dịch vụ. Nhiều dịch vụ nền: Giải pháp này đưa ra nhiều dịch vụ nền cơ bản, các nhà cung cấp có thể dựa trên các dịch vụ nền này để đưa ra các dịch vụ mới. Theo chuẩn truy nhập của 3GPP: Thiết bị truy nhập có thể là điện thoại di động (2G, 2.5G, 3G), ngoài ra có mạng cố định (LAN, MAN, ), mạng không dây cố định (WLAN) hay mạng cố định băng rộng (xDSL, FTTx). Nâng cao QoS và bảo mật: Hỗ trợ thêm QoS liên mạng với các mạng đa phương tiện IP ngoài. Đưa thêm các thành phần bảo mật cho IMS. Khai thác lợi nhuận tối đa từ mạng di động: Khai thác tối đa lợi nhuận mà IMS mang lại cho các mạng di động bằng các phương thức hỗ trợ thanh toán cước giữa hệ thống IMS và các hệ thống mạng khác. Hỗ trợ mở rộng các giao diện IMS (theo chuẩn 3GPP): Đặc biệt là các giao diện giữa nhà khai thác mạng di động và đối tác thứ 3, giao diện nhà quản trị mạng di động. Triển khai tại Việt Nam: Alcatel-Lucent đã ký hợp đồng cung cấp giải pháp IMS cho công ty Viễn thông Liên tỉnh (VTN) trực thuộc VNPT. Giải pháp IMS của Alcatel-Lucent là bản lề giúp VNPT/VTN chuyển đổi từ các dịch vụ PSTN hiện có, tăng cường chất lượng, tính bảo mật và năng suất của mạng, từ đó tạo điều khiện cho các nguồn doanh thu mới và các loại hình dịch vụ di động tiên tiến trong tương lai. 3.1.2 Huawei Mô hình giải pháp IMS của Huawei biểu diễn trong hình 3.2.
  33. 31 Hình 3. 2: Mô hình mạng IMS đầy đủ của Huawei [2] Huawei đưa ra giải pháp chuyển đổi từ Softswitch có khả năng cung cấp nhiều dịch vụ như: dịch vụ quản lý nhóm, nhắn tin đa phương tiện, VCC, c thiết bị chính gồm có: CSC 3300 – Call Session Control Function cung cấp đầy đủ các chức năng liên quan đến nhận thực người dùng, quản lý phiên, quản lý roaming; là phần tử chính trong giải pháp về hệ thống mạng IMS và mạng kết hợp cố định, di động của Huawei. Ngoài các chức năng cơ bản như: P-CSCF, S-CSCF, I-CSCF của một CSCF, nó còn có thêm chức năng BGCF lựa chọn đường truyền từ IMS tới mạng chuyển mạch kênh và nhận diện chức năng thanh toán trực tiếp (OCG). HSS 9820 là server lưu trữ các thông tin người dùng, được tích hợp cả chức năng HSS và SLF của mạng IMS với số lượng thuê bao có thể tới 10 triệu. MRS 6200 gồm 2 thành phần MRC 6200 và MRP 6200 kết hợp với nhau để nhận biết cơ chế phân biệt điều khiển tài nguyên phương tiện từ sóng mang như: audio conference, video conference, voice mailbox, video mailbox, nhạc chuông đa âm, hình màu, PoC. AIM 6300 có chức năng quản lý vị trí, cấu hình mạng truy nhập và lưu trữ thông tin người dùng của mạng cố định, phân bố các tham số mạng và vị trí hiện tại của thiết bị người dùng. Nó bao gồm cả chức năng NACF và CLF trong NASS. AGC 3000 được nâng cấp từ Softswitch theo hai hướng tùy thuộc vào cấu hình hiện tại của mạng NGN, việc nâng cấp được thực hiện bằng thao tác nâng cấp phần mềm. AGC 3000 có thể đóng vai trò như một AGCF hoặc MGCF. SoftX3000 tiếp tục được sử dụng để thực hiện chức năng I-BCF. 3.1.3 Ericsson Ericsson chủ trương phát triển mạng lõi chung cho cả nhà khai thác vô tuyến và hữu tuyến, cung cấp các dịch vụ đa phương tiện hội tụ thông qua các phương thức đa truy cập đáp ứng các cấp độ dịch vụ. Hệ thống IMS của Ericsson bao gồm lõi, các thành phần hoạt động chung, hỗ trợ chức năng liên kết hoạt động cho phép nhà khai thác và
  34. 32 nhà cung cấp dịch vụ giảm giá thành, sử dụng các hạ tầng mạng sẵn có với tính năng sử dụng dễ dàng, độ tin cậy và bảo mật cao. Giải pháp IMS của Ericsson là cấu trúc hoàn chỉnh End-to-End cho các nhà khai thác cố định và di động, cung cấp từ thiết bị đầu cuối đến xây dựng và phân bố dịch vụ. Các thành phần mạng Ericsson cung cấp bao gồm CSCF, HSS tới AS. Giải pháp IMS của Ericsson được xây dựng trên nền Ericsson Mobile Platforms bao gồm cả cấu trúc của IMS Client. Giải pháp này bao gồm các dịch vụ tiêu chuẩn hóa IMS Push to Talk, IMS weShare phục vụ người dùng di động và IMS Multimedia Telephony cho người dùng cố định. Hình 3.3 thể hiện cấu trúc tổng quan giải pháp IMS của Ericsson, các thành phần chính bao gồm: Hệ thống chung IMS – IMS Common System (ICS) bao gồm các phần tử cho cả hệ thống vô tuyến và hữu tuyến và những phần tử được sử dụng đễ hỗ trợ nhiều giải pháp trong cùng một domain. Các hệ thống hỗ trợ IMS – IMS Support Systems. Các ứng dụng và kiến tạo dịch vụ IMS – IMS Enablers and Applications. Hình 3. 3: Sơ đồ tổng quan giải pháp IMS của Ericsson [13, p. 106] Giải pháp dịch vụ VNPT sử dụng bao gồm giải pháp Ericsson IMS Multimedia Telephony, IMT; ngoài ra còn có các giải pháp dịch vụ khác như: IMS Push to Talk – PTT, IMS Messaging – IMSM và giải pháp IMS IPTV. 3.2 Giải pháp SOA cho doanh nghiệp 3.2.1 Oracle Giới thiệu về bộ giải pháp SOA của Oracle (SOA Suite) SOA Suite là một trong những giải pháp phần mềm chính cho công nghệ SOA của công ty Oracle. Mô hình kiến trúc SOA Suite được minh họa như trong hình 3.4.
  35. 33 Hình 3. 4: Mô hình kiến trúc SOA Suite. [15] SOA Suite cung cấp một môi trường dùng để: Quản lý các dịch vụ một cách hiệu quả Hỗ trợ quá trình thiết kế, phát triển, triển khai và quản lý các tiến trình từ các dịch vụ sẵn có từ môi trường bên ngoài hay bên trong hệ thống. SOA Suite gồm ba thành phần chính: ServiceBus: cung cấp môi trường quản lý các dịch vụ nội bộ trong hệ thống. BpelEngine: cung cấp môi trường thực thi cho các tiến trình nghiệp vụ. BPEL Designer: cung cấp môi trường thiết kế các tiến trình nghiệp vụ. 3.2.2 Cisco Kiến trúc mạng thông minh định nghĩa bởi Cisco cho doanh nghiệp là SONA như biểu diễn trong hình 3.5. Cisco SONA sử dụng dòng sản phẩm mở rộng, các dịch vụ, các kiến trúc, và kinh nghiệm của Cisco cũng như đối tác để giúp các doanh nghiệp đạt được mục tiêu kinh doanh của họ. Hình 3. 5: Kết cấu kiến trúc SONA của Cisco [9]
  36. 34 Các lợi ích của SONA Cisco: SONA thúc đẩy sử dụng hiệu quả hơn các tài nguyên mạng và đưa ra các lợi ích sau: Chức năng: Hỗ trợ các yêu cầu của tổ chức. Khả năng mở rộng: Hỗ trợ sự lớn mạnh và mở rộng của các nhiệm vụ tổ chức nhờ tách biệt các chức năng và sản phẩm trong các lớp. Việc phân lớp này mà mạng có thể phát triển mở rộng dễ dàng hơn. Tính sẵn có: Cung cấp các dịch vụ cần thiết tin cậy bất cứ đâu vào bất cứ thời điểm nào. Thực hiện: Cung cấp phản hồi mong đợi, thông lượng và tiêu hao tài nguyên dựa trên cơ sở là ứng dụng thông qua cơ sở hạ tầng mạng và dịch vụ. Khả năng quản lý: Đưa ra khả năng điều khiển, giám sát thực hiện, và phát hiện lỗi. Hiệu quả: Thông qua sự tăng trưởng dịch vụ mạng từng bước, SONA đưa ra các dịch vụ mạng và cơ sở hạ tầng với chi phí hoạt động hợp lý và đầu tư thích hợp trên đường chuyển tới mạng thông minh hơn. Triển khai tại Việt Nam: Cisco cùng với đối tác của mình là tập đoàn HPT đã triển khai hệ thống cơ sở hạ tầng truyền thông cho ngân hàng INCOMBANK dựa trên kiến trúc mạng hướng dịch vụ SONA. Đây là ngân hàng đầu tiên áp dụng kiến trúc mạng hướng dịch vụ tại Việt Nam. 3.3 Giải pháp Web 2.0 3.3.1 Các công nghệ xây dựng ứng dụng web 2.0 Ngôn ngữ đánh dấu mở rộng XML Ngôn ngữ đánh dấu mở rộng XML là một ngôn ngữ đánh dấu tạo ra cấu trúc dữ liệu, lưu trữ và vận chuyển bằng cách định nghĩa một tập hợp các quy tắc cho các tài liệu mã hóa trong một định dạng mà cả con người và máy có thể đọc được. Các quy tắc đó được định nghĩa trong XML 1.0 Đặc điểm của nó theo chuẩn của W3C, và một số chi tiết kỹ thuật có liên quan khác. JavaScript và XML bất đồng bộ AJAX Ajax viết tắt của Asynchronous JavaScript và XML là một nhóm các kỹ thuật phát triển web liên quan đến nhau được sử dụng trên phía client để tạo ra các ứng dụng web không đồng bộ. Với Ajax, các ứng dụng web có thể gửi dữ liệu, và lấy dữ liệu từ một máy chủ không đồng bộ mà không can thiệp với màn hình hiển thị và hành vi của trang hiện tại. Dữ liệu có thể được lấy ra bằng cách sử dụng đối tượng XMLHttpRequest. Mặc dù tên, sử dụng XML không cần thiết (JSON thường được sử dụng thay thế), và yêu cầu không cần phải là không đồng bộ. Flash Flash là một nền tảng đa phương tiện được sử dụng để thêm hình ảnh động, video, và tương tác với các trang web. Flash thường xuyên được sử dụng để quảng cáo, xây
  37. 35 dựng trò chơi và hình ảnh động. Flash điều khiển vector và raster đồ họa để cung cấp hình ảnh động của văn bản, bản vẽ, và hình ảnh tĩnh. Nó hỗ trợ dòng hai chiều của âm thanh và video, và nó có thể bắt đầu vào người sử dụng thông qua chuột, bàn phím, microphone, và máy ảnh. Flash có chứa một ngôn ngữ hướng đối tượng được gọi là ActionScript và hỗ trợ tự động hóa thông qua ngôn ngữ JavaScript Flash (JSFL). 3.3.2 Web 2.0 tại Việt Nam Web 2.0 được dùng rộng rãi tại Việt Nam, trong các mạng xã hội như Facebook, chia sẻ hình ảnh như Flick, tìm kiếm bằng Google, chia sẻ video bằng Youtube, định nghĩa ở Wikipedia. Bên cạnh đó cũng có những ứng dụng có thể coi là "được Việt hóa" của những ứng dụng trên, như các mạng xã hội với các trang web tiêu biểu như Yobanbe, Cyworld, Faceviet, . . . ; lĩnh vực tìm kiếm với các trang web tiêu biểu như Baamboo, Tim nhanh, Zing Search, ; mảng dịch vụ giải trí với các trang xem video, nghe nhạc và các dịch vụ khác như Clip vn, Yeuamnhac.com, Mp3zing, . . .; lĩnh vực lưu địa chỉ trang web, hay còn gọi là Bookmark với các trang web tiêu biểu như Lin khay.com, Tagvn.com, Vietkicks.com, Từ đó có thể thấy được quá trình áp dụng triển khai các ứng dụng dịch vụ trên nền tảng công nghệ Web 2.0 đã đạt được những thành công bước đầu tại Việt Nam. Việt Nam đang trên con đường hội nhập và phát triển cùng với nền công nghệ thông tin trên thế giới. Bên cạnh những công nghệ khác thì Web 2.0 là lĩnh vực gặt hái được nhiều thành công cũng như rất gần gũi trong đời sống. 3.4 Kết luận chương Các giải pháp mạng hướng dịch vụ đã được các hãng công nghệ nổi tiếng trên thế giới xây dựng và phát triển đa dạng. Trong đó nổi bật nhất phải kể đến giải pháp IMS cho mạng thông tin di động của Alcatel-Lucent, Huawei và Ericsson; giải pháp kiến trúc hướng dịch vụ cho doanh nghiệp của Oracle và Cisco; và giải pháp Web 2.0 được sử dụng rộng rãi trên Internet hiện nay có thể kể đến như mạng xã hội, công cụ tìm kiếm Sự phát triển mạnh mẽ của các giải pháp mạng hướng dịch vụ đặt ra yêu cầu cấp thiết nghiên cứu, vận hành nền tảng phân phối dịch vụ cũng như mạng hướng dịch vụ trong hệ thống mạng của nước ta.
  38. 36 Chương 4: MÔ PHỎNG NỀN TẢNG PHÂN PHỐI DỊCH VỤ 4.1 Kiến trúc nền tảng phân phối dịch vụ 4.1.1 Tổng quan Phần này đưa ra một nền tảng phân phối dịch vụ tự trị liên kết giá trị có từ các tài nguyên IT với các quá trình doanh nghiệp chúng hỗ trợ. Nền tảng tổng hợp từ ba thành phần người sử dụng dịch vụ, trung gian hướng dịch vụ và nhà cung cấp dịch vụ. Nền tảng này sẽ cung cấp: Cơ sở hạ tầng định tuyến phân bố đầy đủ, dựa trên nội dung và tối ưu. Lựa chọn các nhà cung cấp dịch vụ linh hoạt và tối ưu có thể dựa trên các mục tiêu mức hệ thống khác nhau (như trễ đầu cuối hay lân cận). Điều khiển luồng tối ưu của các yêu cầu dịch vụ. [18] Thành phần cốt lõi cho phép nền tảng phân phối dịch vụ là giao thức định tuyến dịch vụ cộng tác dựa trên tiện ích. Mục tiêu của giao thức này là định tuyến các yêu cầu sao cho trọng số “phúc lợi xã hội” của hệ thống là cực đại. Giao thức này phổ biến chi phí hiện tại và thông tin tiện ích cho các nút trung gian dịch vụ trong nền tảng phân phối dịch vụ để cho hệ thống chuyển tiếp tối ưu và giới hạn tốc đọ các yêu cầu dịch vụ. Ta xây dựng nền tảng phân phối dịch vụ sử dụng mô hình được minh họa như trong hình 4.1. Trong mô hình, ta thêm vào một nút đích logic vào topo lớp dịch vụ kết nối trực tiếp với tất cả các nhà cung cấp dịch vụ qua một đường truyền ảo giá bằng không. Ta cũng giả định tồn tại thuật toán có thể sử dụng để lựa chọn đường đi qua topo mạng thỏa mãn được nhu cầu của khách hàng. Các giả định này cho phép ta áp dụng trực tiếp các thuật toán định tuyến đa đường tối ưu vào kiến trúc và sử dụng thông tin chi phí như quyết định cuối cùng để đưa ra quyết định chuyển tiếp cho yêu cầu đã cho. Hình 4. 1: Topo mạng hướng dịch vụ với nhiều nhà cung cấp 4.1.2 Các phương pháp luận tích hợp trong nền tảng Nền tảng phân phối dịch vụ dựa trên tích hợp một số phương pháp luận then chốt, ta sẽ mô tả trong phần dưới đây.
  39. 37 Định tuyến dựa trên nội dung: trực tiếp tận dụng chức năng định tuyến dựa trên nội dung cung cấp bởi mạng hướng dịch vụ để cho phép chuyển tiếp các yêu cầu trong nền tảng phân phối dịch vụ. Các thuật toán định tuyến dựa trên nội dung điển hình áp dụng các quy tắc với một số phần của yêu cầu dịch vụ (tiêu đề hay nội dung) để trích ra các thuộc tính. Những thuộc tính này được sử dụng để ghép yêu cầu dịch vụ với nhà cung cấp có thể trong topo mạng hướng dịch vụ. Điều khiển luồng và định tuyến tối ưu: Cùng với việc xem xét nội dung các yêu cầu, nền tảng phân phối dịch vụ cũng hợp nhất các trạng thái quan sát được của hệ thống vào thuật toán định tuyến tối ưu. Ngoài sử dụng định tuyến tối ưu, ta phải bảo đảm tốc độ các yêu cầu đến một nút cụ thể trong nền tảng phân phối dịch vụ được điều chỉnh thích hợp. Ta có thể đạt được điều này bởi tích hợp thêm điều khiển luồng tối ưu vào kiến trúc. Tích hợp định tuyến đa đường phân bố, không lặp và tối ưu và thuật toán điều khiển luồng là thiết yêu cho robustness và khả năng mở rộng của nền tảng phân phối dịch vụ. Vì giá chuyển tiếp được xác định bởi tổng các giá tắc nghẽn của nút trung gian và giá quảng bá bởi hop tiếp theo (nút trung gian hay nhà cung cấp), ta triển khai giá đường đi cộng dồn của cơ cấu kinh tế bên dưới để xây dựng giao thức định tuyến dịch vụ cần thiết. Kinh tế mạng: Ta đưa vào khái niệm kinh tế cực đại phuc lợi xã hội mạng khi tính toán bài toán tối ưu cho nền tảng. Chi phí tắc nghẽn: Ta áp dụng khái niệm chi phí tắc nghẽn để cân bằng trạng thái hiện tại của các điều kiện mạng bên dưới và các đặc trưng hiệu suất của nhà cung cấp dịch vụ và mạng trung gian để định tuyến tối ưu các yêu cầu; và được biểu diễn bởi hàm ( 푠,ᵧ , ) 4.2 Phân tích kếu cấu nền tảng phân phối dịch vụ Xét một mạng hướng dịch vụ gồm các nút trung gian và nhà cung cấp, biểu diễn T bởi 풥 = 1, 2 J. Gọi cj là dung năng của tài nguyên j ∈ 풥 và c = [c1, c2 cj] . Và 𝒮 = 1, 2, , S là tập hợp các nút nguồn (khách hàng). Mỗi nguồn s có Ks đường đi không lặp tới nút đích cung cấp dịch vụ. Gọi Hs là ma trận cỡ J * Ks gồm các phần tử 0 và 1 biểu diễn đường đi cho mỗi nguồn, sao cho: 1, 푛ế đườ푛 đ푖 푖 ủ 푛 ồ푛 푠 푠ử ụ푛 푡à푖 푛 ê푛 푗 푠 = { 푗푖 0, ℎá Gọi ℋs là tập hợp tất cả các cột của Hs biểu diễn tất cả các đường đi cho nguồn s với định tuyến đơn đường. Định nghĩa ma trận H cỡ J * K: H = [H1, H2 HS] 푠 với K ∶= ∑푠 퐾 . H định nghĩa topo của mạng hướng dịch vụ. Gọi ws là vector cỡ Ks * 1 với thành phần thứ i biểu diễn một phần của đường đi của s trên đường đi thứ i đó sao cho: s T s w i ≥ 0 ∀i, và 1 w = 1
  40. 38 với 1 là một vector có kích thước thích hợp và mọi thành phần có giá trị bằng 1. Ta cho s s w i ∈ [0,1] trong định tuyến đa đường. Gộp các vector w , s = 1 S vào ma trận đường chéo khối W kích thước K * S. Gọi 풲 là tập tất cả các ma trận như vậy, tương ứng với định tuyến đa đường là: [13] 풲= {W| W = diag (w1 wS) ∈ [0,1]K*S, 1Tws = 1} Như đề cập ở trên, ma trận H là tập các đường đi không lặp cho mỗi nguồn và cũng biểu diễn topo mạng. Ma trận W biểu diễn cách nguồn chia nhỏ tải qua nhiều đường đi. Tích của H và W định nghĩa ma trận nguồn R = H.W cỡ J * S chỉ rõ các phần luồng dữ liệu s tại mỗi tài nguyên j. Tập hợp tất cả các ma trận định tuyến đa đường là: [13] ℛ = {R| R = HW, W ∈ 풲 } Ma trận định tuyến đa đường trong R chứa các phần tử trong khoảng [0,1]: > 0, 푛ế 푡à푖 푛 ê푛 푗 ở 푡 ê푛 đườ푛 đ푖 ủ 푛 ồ푛 푠 R = { js = 0, ℎá s T Đường đi của nguồn s được biểu diễn bởi r = [R1s Rjs] , là cột thứ s của ma trận định tuyến R. Ta xem xét bài toán tối ưu hóa sau: [12],[8] max max ∑ [푈푠( 푠) − ∑ ( 푠,ᵧ , )] (4.1) 푅∈ℛ ≥0 s ∈ 𝒮 ∈퐹푠 với: Rx ≤ c (4.2) (4.1) tối ưu bởi cực đại hàm tiện ích qua tốc độ nguồn và đường đi. Tuy nhiên, (4.1) không phải là một bài toán hàm lồi vì tập khả thi chỉ ra trong Rx ≤ c tổng quát không phải là hàm lồi (tích của hai biến R và x). Bây giờ ta biến đổi bài toán bằng định nghĩa biến mới là vector ys (cỡ Ks * 1) theo s s đại lượng vô hướng xs, và vector w (cỡ K * 1): s s y = xs w (4.3) s s T s s Ánh xạ từ (xs, w ) sang y là ánh xạ một-một; phép đảo của (4.3) là xs= 1 y và w = s y /xs. T s Ta thay các biến trong (4.1) và (4.2) từ (W, x) thành y, bởi thay thế xs= 1 y và Rx = HWx = Hy, ta được bài toán tương đương: 푠 푠 max ∑ [푈푠( ) − ∑ ( , ᵧ , )] (4.4) ≥0 s ∈ 𝒮 ∈퐹 với: Hy ≤ c (4.5) Cho các hàm Us (.) và f (.) là hàm lồi chặt, đây trở thành bài toán hàm lồi chặt với ràng buộc tuyến tính, và do đó không có khoảng cách đối ngẫu (duality gap). 4.3 Topo mạng dùng trong mô phỏng Trong phần này, ta đưa ra một mô hình mạng hướng dịch vụ để nghiên cứu các kết quả mô phỏng như trong hình 4.2. Các kết quả mô phỏng không chỉ kiểm chứng lại các
  41. 39 chức năng của nền tảng phân phối dịch vụ như đã trình bày ở phần trên mà còn biểu diễn sự linh động của hệ thống để thích nghi với các tiêu chí khác nhau có thể được quan tâm trong các trường hợp cụ thể. Hình 4. 2: Topo mạng hướng dịch vụ sử dụng trong mô phỏng Topo mạng bao gồm hai dịch vụ khác biệt là Dịch vụ 1 và Dịch vụ 2 cạnh tranh tài nguyên của mạng hướng dịch vụ. Mỗi dịch vụ có hai nút nhà cung cấp đưa ra các dịch vụ tương ứng tới khách hàng đó là: Nhà cung cấp F và G cho dịch vụ 1. Nhà cung cấp H và I cho dịch vụ 2. Có năm nút trung gian (Nút A, B, C, D và E) được cấu hình để chuyển tiếp các yêu cầu cho một trong hai loại dịch vụ từ các khách hàng đến nhà cung cấp thích hợp. Mô phỏng thực hiện giải quyết bài toán định tuyến tối ưu trong MATLAB sử dụng hệ thống mô hình CVX cho bài toán tối ưu hàm lồi (xem thêm trong Phụ lục 2). Trong tất cả các trường hợp trình bày trong phần này, dung năng của các nút trung gian là nhỏ hơn dung năng tổng cộng của các dịch vụ; điều này cho phép chúng ta dễ dàng nghiên cứu cơ cấu phân tích thích nghi với sự cấp phát các luồng trong mạng hướng dịch vụ dựa trên sự thay đổi tốc độ tới và/hoặc các tham số bên ngoài như đếm hop hay trễ trung bình. Trong thực nghiệm này, topo được biểu diễn bởi ma trận mà các phần tử là 1 hay 0 tùy thuộc vào đường đi có đi qua tài nguyên tương ứng hay không. Ở đây có tất cả 9 nút mạng: 5 nút trung gian: A, B, C, D, E. 2 nút nhà cung cấp dịch vụ 1: F, G. 2 nút nhà cung cấp dịch vụ 2: I, J.
  42. 40 Ma trận H cỡ 26*9 (26 đường đi, 9 nút mạng) biểu diễn tất cả các đường đi của topo mạng đã đưa ra như sau (chi tiết như trong Phụ lục 1) H= [1 1 0 0 0 1 0 0 0 A -> B -> F (Đường 1) 1 1 1 0 0 1 0 0 0 A -> C -> B -> F (Đường 2) 1 1 1 1 0 1 0 0 0 A -> C -> D -> B -> F (Đường 3) 1 1 1 1 0 0 1 0 0 A -> B -> C -> D -> G (Đường 4) 1 1 0 1 0 0 1 0 0 A -> B -> D -> G (Đường 5) 1 1 1 1 0 0 1 0 0 A -> C -> B -> D -> G (Đường 6) 1 0 1 1 0 0 1 0 0 A -> C -> D -> G (Đường 7) 1 1 1 0 0 1 0 0 0 C -> A -> B -> F (Đường 8) 0 1 1 0 0 1 0 0 0 C -> B -> F (Đường 9) 0 1 1 1 0 1 0 0 0 C -> D -> B -> F (Đường 10) 1 1 1 1 0 0 1 0 0 C -> A -> B -> D -> G (Đường 11) 0 1 1 1 0 0 1 0 0 C -> B -> D -> G (Đường 12) 0 0 1 1 0 0 1 0 0 C -> D -> G (Đường 13) 1 1 1 1 1 0 0 1 0 E -> B -> A -> C -> D -> H (Đường 14) 0 1 1 1 1 0 0 1 0 E -> B -> C -> D -> H (Đường 15) 0 1 0 1 1 0 0 1 0 E -> B -> D -> H (Đường 16) 1 1 1 0 1 0 0 0 1 E -> B -> A -> C -> I (Đường 17) 0 1 1 0 1 0 0 0 1 E -> B -> C -> I (Đường 18) 0 1 1 1 1 0 0 0 1 E -> B -> D -> C -> I (Đường 19) 1 1 1 1 0 0 0 1 0 A -> B -> C -> D -> H (Đường 20) 1 1 0 1 0 0 0 1 0 A -> B -> D -> H (Đường 21) 1 1 1 1 0 0 0 1 0 A -> C -> B -> D -> H (Đường 22) 1 0 1 1 0 0 0 1 0 A -> C -> D -> H (Đường 23) 1 1 1 0 0 0 0 0 1 A -> B -> C -> I (Đường 24) 1 1 1 1 0 0 0 0 1 A -> B -> D -> C -> I (Đường 25) 1 0 1 0 0 0 0 0 1] A -> C -> I (Đường 26) Ma trận này được sử dụng là file đầu vào trong phần tiếp theo của mô phỏng sử dụng hệ thống mô hình CVX cho bài toán tối ưu hàm lồi trên nền MATLAB. [7],[16] 4.4 Các trường hợp mô phỏng Ta sẽ thực hiện mô phỏng để chỉ ra khả năng của SDP cực đại tổng tiện ích của hệ thống để thích nghi với các thay đổi tốc độ yêu cầu dịch vụ gửi đến. Trong luận văn này, để đơn giản ta sẽ không đưa vào hàm tắc nghẽn (không có ( 푠,ᵧ , ) ), chỉ tối ưu hóa hàm tiện ích đơn thuần). 4.4.1 Độ ưu tiên dịch vụ ngang nhau Mặt khác theo [9] (p265), hàm tiện ích của mô hình TCP Vegas được xác định bởi:
  43. 41 푈푠( 푠) = 푤푠 log 푠 (4.6) Trong đó: 푈푠 là hàm tiện ích tại nguồn s 푠 là tốc độ của nguồn s 푤푠 là trọng số T s Như ở phần trước ta đặt xs= 1 y hàm tiện ích cho 2 nguồn dịch vụ 1 và 2 tương ứng sẽ là: 1 1 푈1( ) = 푤1 log( ) (4.7) 2 2 푈2( ) = 푤2 log( ) (4.8) Để bắt đầu, ta thiết lập mức độ ưu tiên của các dịch vụ ngang nhau (푤1 = 푤2 = 푤). Thay các giá trị hàm tiện ích từ (4.7) và (4.8) vào bài toán định tuyến tối ưu (4.4) và (4.5) trong trường hợp TCP Vegas này trở thành: max[wlog( 1) + wlog( 2)] ≥0 với: Hy ≤ c Hay đơn giản bỏ tham số 푤 > 0, bài toán định tuyến tối ưu có dạng đơn giản hơn là: max[log( 1) + log( 2)] ≥0 với: Hy ≤ c Thay đổi tốc độ lối vào tại các thời điểm khác nhau cho mỗi nguồn lưu lượng như trong bảng 4.1. Bảng 4. 1: Tốc độ yêu cầu tại các thời điểm khác nhau Tốc độ nguồn (Yêu cầu trên giây) Nguồn 1 Nguồn 2 Nguồn 3 Nguồn 4 Thời gian (Dịch vụ 1) (Dịch vụ 1) (Dịch vụ 2) (Dịch vụ 2) t1 500 500 500 500 t2 500 500 200 100 t3 300 200 200 100 t4 300 200 500 500 Tại thời điểm t1, khi tất cả tải có 500 yêu cầu trên giây. Để xác định tài nguyên cấp phát cho hai dịch vụ ta thực hiện chương trình sử dụng CVX trong MATLAB (Script trên M-file) %CHƯƠNG TRÌNH GIẢI QUYẾT BÀI TOÁN TỐI ƯU NỀN TẢNG PHÂN PHỐI DỊCH VỤ SỬ DỤNG CÔNG CỤ CVX TRONG MATLAB H=importdata('E://MaTranDuongDi.txt'); %Nhập ma trận đường đi row_H=size(H,1); column_H=size(H,2);
  44. 42 %Dung lượng của tất cả các nút là 400 yêu cầu trên giây for i = 1:column_H C(i)=400; end %Chương trình CVX cvx_begin variable y(row_H); %Ma trận trọng số qua mỗi đường đi i1=1; for i = 1:row_H if ( H(i,column_H - 3)==1 || H(i,column_H - 2)==1) %Là nhà cung cấp dịch vụ 1 for j=1:column_H H1(i1,j)= H(i,j); %Phần ma trận đường đi cho dịch vụ 1 end y1(i1)= y(i); %Phần trọng số đường đi của dịch vụ 1 i1=i1+1; end end i2=1; for i = 1:row_H if (H(i,column_H - 1)==1 || H(i,column_H)==1) % Là nhà cung cấp dịch vụ 2 for j=1:column_H H2(i2,j)= H(i,j); % Phần ma trận đường đi cho dịch vụ 2 end y2(i2) = y(i); % Phần trọng số đường đi của dịch vụ 2 i2=i2+1; end end S1 = y1 * H1; % Dịch vụ 1 tại mỗi nút S2 = y2 * H2; % Dịch vụ 2 tại mỗi nút T11 = ones(1,size(y1,2)); %vector có kích thước thích hợp cho y1 T12 = ones(1,size(y2,2)); %vector có kích thước thích hợp cho y2 %BÀI TOÁN maximize (log(T11 * y1' ) + log(T12 *y2')/log(exp(1))); subject to %Điều kiện y >= 0; y' * H <= C; cvx_end echo on %Thông lượng tại mỗi nút A, B, C, D, E, F, G, H cho dịch vụ 1 và 2 S1
  45. 43 S2 S1+S2 echo off clear Kết quả thông lượng tại mỗi nút cho từng dịch vụ cho trong bảng 4.2. Bảng 4. 2: Thông lượng các nút thời điểm t1 (hai dịch vụ có độ ưu tiên như nhau) Dịch vụ 1 Dịch vụ 2 Tổng Nút A 199,9995 200,0005 400,0000 Nút B 199,9995 200,0005 400,0000 Nút C 199,9995 200,0005 400,0000 Nút D 199,9995 200,0005 400,0000 Nút E 0 200,0005 200,0005 Nút F 199,9995 0 199,9995 Nút G 199,9995 0 199,9995 Nút H 0 200,0005 200,0005 Nút I 0 200,0005 200,0005 Hình 4. 3: Thông lượng Dịch vụ theo Đường đi tại thời điểm t1 (Hai dịch vụ độ ưu tiên như nhau) Hệ thống sẽ cấp phát ½ tài nguyên cho Dịch vụ 1 và ½ tài nguyên còn lại cho Dịch vụ 2; xảy ra điều này bởi vì cả hai có hàm tiện ích như nhau và trọng số tương quan như nhau. Tại thời điểm t2, tải Dịch vụ 2 giảm xuống còn 200 và 100 cho nguồn III và IV tương ứng. Do đó, tổng cộng tải là 1000 cho dịch vụ 1 và 300 cho Dịch vụ 2. Tối đa có 800 yêu cầu trên giây hỗ trợ cho Dịch vụ 1 (nếu cả hai nhà cung cấp hoạt động hết khả
  46. 44 năng), nhưng vì các khách hàng của Dịch vụ 2 đang gửi ít lưu lượng hơn so với tại thời điểm t1, hệ thống cấp phát tài nguyên cho tất cả các yêu cầu của Dịch vụ 2, cộng với các tài nguyên bổ sung cho yêu cầu Dịch vụ 1, so với đã cho tại thời điểm t1. Điều này thực hiện nhằm sử dụng triệt để các nút trung gian. Tuy nhiên, các nhà cung cấp không được tận dụng triệt để bởi vì dung năng không bị thắt cổ chai trong topo này. Thêm vào điều kiện trong đoạn mã cvx. Kết quả cấp phát tài nguyên trong các nút mạng hướng dịch vụ tại thời điểm t2 được cho trong bảng 4.3. Bảng 4. 3: Thông lượng các nút thời điểm t2 (hai dịch vụ có độ ưu tiên như nhau) Dịch vụ 1 Dịch vụ 2 Tổng Nút A 200,0000 200.0000 400.0000 Nút B 233,3333 166,6667 400,0000 Nút C 266,6667 133,3333 400,0000 Nút D 233,3333 166,6667 400,0000 Nút E 0 100,0000 100,0000 Nút F 233,3333 0 233,3333 Nút G 233,3333 0 233,3333 Nút H 0 166,6667 166,6667 Nút I 0 133,3333 133,3333 Hình 4. 4: Thông lượng Dịch vụ theo Đường đi tại thời điểm t2 (Hai dịch vụ độ ưu tiên như nhau) Tại thời điểm t3, tải Dịch vụ 2 giữ nguyên 200 và 100 cho nguồn III và IV tương ứng, nhưng Dịch vụ 1 tải giảm xuống còn 300 và 200 cho nguồn I và II tương ứng. Do đó, nút A bị thắt cổ chai vì nó nhận được 300 yêu cầu (Dịch vụ 1) + 200 yêu cầu (Dịch vụ 2) trên giây, nhưng nút A chỉ có dung năng là 400 yêu cầu trên giây. Vậy nên nút A phải loại bỏ 100 yêu cầu trên giây. Vì cả hai dịch vụ có độ ưu tiên như nhau, nút A loại
  47. 45 bỏ các yêu cầu từ Dịch vụ 1, kết quả là cả hai dịch vụ nhận được cùng dung năng 200 yêu cầu trên giây. Trong trường hợp này, hệ thống cấp phát quá số đường đi lớn hơn để tận dụng triệt để hơn tài nguyên. Thêm vào điều kiện trong đoạn mã cvx. Kết quả cấp phát tài nguyên trong các nút mạng hướng dịch vụ tại thời điểm t3 được cho trong bảng 4.4. Bảng 4. 4: Thông lượng các nút thời điểm t3 (hai dịch vụ có độ ưu tiên như nhau) Dịch vụ 1 Dịch vụ 2 Tổng Nút A 200,0000 200,0000 400,0000 Nút B 212,4612 184,6446 397,1058 Nút C 222,5517 173,8605 396,4122 Nút D 222,6464 170,8402 393,4866 Nút E 0 100,0000 100,0000 Nút F 184,2148 0 184,2148 Nút G 215,7852 0 215,7852 Nút H 0 160,8743 160,8743 Nút I 0 139,1257 139,1257 Hình 4. 5: Thông lượng Dịch vụ theo Đường đi tại thời điểm t3 (Hai dịch vụ độ ưu tiên như nhau) Tại thời điểm t4, tải Dịch vụ 2 tăng lên 500 và 500 cho nguồn III và IV, còn Dịch vụ 1 tải giữ nguyên là 300 và 200 cho nguồn I và II. Nút A lại bị thắt cổ chai vì nó nhận 300 yêu cầu trên giây từ Dịch vụ 1 và 500 yêu cầu trên giây từ Dịch vụ 2. Dung năng của nút A là 400 yêu cầu trên giây, vậy nó loại bỏ 400 yêu cầu trên giây. Vì cả hai dịch vụ có độ ưu tiên như nhau, nút A sẽ loại bỏ yêu cầu từ cả hai loại dịch vụ, kết quả là cả hai dịch vụ nhận cùng dung năng là 200 yêu cầu trên giây.
  48. 46 Thêm vào điều kiện trong đoạn mã cvx. Kết quả cấp phát tài nguyên trong các nút mạng hướng dịch vụ tại thời điểm t4 được cho trong bảng 4.5. Kết quả này tương tự như đã thấy tại thời điểm t1. Bảng 4. 5: Thông lượng các nút thời điểm t4 (hai dịch vụ có độ ưu tiên như nhau) Dịch vụ 1 Dịch vụ 2 Tổng Nút A 200,0000 200,0000 400,0000 Nút B 200,0000 200,0000 400,0000 Nút C 200,0000 200,0000 400,0000 Nút D 200,0000 200,0000 400,0000 Nút E 0 200,0000 200,0000 Nút F 200,0000 0 200,0000 Nút G 200,0000 0 200,0000 Nút H 0 200,0000 200,0000 Nút I 0 200,0000 200,0000 Hình 4. 6: Thông lượng Dịch vụ theo Đường đi tại thời điểm t4 (Hai dịch vụ độ ưu tiên như nhau) Từ đồ thị và hai bảng ở trên, ta có thể dễ dàng nhận thấy để giảm thiểu tranh chấp, lời giải cho bài toán tối ưu có xu hướng cấp phát tài nguyên trên các đường đi ngắn hơn. Tuy nhiên, nếu tải đến là không cân bằng, hệ thống sẽ cấp phát tài nguyên trên nhiều đường (có thể không phải là đường ngắn nhất) để sử dụng tối đa hệ thống. 4.4.2 Độ ưu tiên dịch vụ khác nhau Các nhà quản trị hệ thống có thể mong muốn đưa ra độ ưu tiên cao hơn cho một dịch vụ nào đó trong nền tảng phân phối dịch vụ. Ví dụ, Dịch vụ 1 biểu diễn lưu lượng ‘đặt hàng’ của một trang web thương mại điện tử, trong khi đó Dịch vụ 2 biểu diễn lưu lượng ‘duyệt web’ tới trang web. Vì lưu lượng ‘đặt hàng’ liên quan trực tiếp tới doanh
  49. 47 thu, trọng số cho lưu lượng đó sẽ được đặt cao hơn. Ta mô phỏng một tình huống như vậy trong nền tảng phân phối dịch vụ của chúng ta bằng cách đánh trọng số cho Dịch vụ 1 cao hơn 5 lần so với Dịch vụ 2. Bài toán tối ưu trở thành: max[5 ∗ log( 1) + log( 2)] ≥0 với: Hy ≤ c Tương tự như trong phần trước, ta thay đổi tốc độ lối vào tại các thời điểm t1, t2, t3 và t4 cho mỗi nguồn lưu lượng như đã chỉ ra trong bảng thời điểm t1. Tại thời điểm t1, khi tất cả tải là 500 yêu cầu trên giây, hệ thống sẽ cấp phát phần tài nguyên lớn hơn cho Dịch vụ 1 so với tài nguyên cho Dịch vụ 2; xảy ra điều này bởi vì lưu lượng Dịch vụ 1 được đặt giá trị ưu tiên cao hơn. Bảng 4.6 biểu diễn tài nguyên được cấp phát theo tỉ lệ cho hai dịch vụ tại thời điểm t1. Bảng 4. 6: Thông lượng các nút thời điểm t1 (độ ưu tiên dịch vụ khác nhau) Dịch vụ 1 Dịch vụ 2 Tổng Nút A 333,3336 66,6664 400,0000 Nút B 333,3336 66,6664 400,0000 Nút C 333,3336 66,6664 400,0000 Nút D 333,3336 66,6664 400,0000 Nút E 0 66,6664 66,6664 Nút F 333,3336 0 333,3336 Nút G 333,3336 0 333,3336 Nút H 0 66,6664 66,6664 Nút I 0 66,6664 66,6664 Hình 4. 7: Thông lượng Dịch vụ theo Đường đi tại thời điểm t1 (Độ ưu tiên dịch vụ khác nhau)
  50. 48 Tại thời điểm t2, tải Dịch vụ 2 giảm xuống còn 200 và 100 cho nguồn III và IV tương ứng. Do đó, tổng cộng tải là 1000 cho dịch vụ 1 và 300 cho Dịch vụ 2. Tối đa có 800 yêu cầu trên giây hỗ trợ cho Dịch vụ 1 (nếu cả hai nhà cung cấp hoạt động hết khả năng), nhưng vì các khách hàng của Dịch vụ 2 đang gửi ít lưu lượng hơn so với tại thời điểm t1, hệ thống cấp phát lượng tài nguyên như tại thời điểm t0. Điều này bởi vì phần tài nguyên cung cấp cho Dịch vụ 2 vẫn còn nhỏ hơn lưu lượng đề nghị, vì vậy ta không thấy bất kỳ thay đổi nào trong việc cấp phát tài nguyên. Cấp phát tài nguyên tại các nút mạng SON tại thời điểm t2 được chỉ ra như trong bảng 4.7. Bảng 4. 7: Thông lượng các nút thời điểm t2 (độ ưu tiên dịch vụ khác nhau) Dịch vụ 1 Dịch vụ 2 Tổng Nút A 333,3336 66,6664 400,0000 Nút B 333,3336 66,6664 400,0000 Nút C 333,3336 66,6664 400,0000 Nút D 333,3336 66,6664 400,0000 Nút E 0 66,6664 66,6664 Nút F 333,3336 0 333,3336 Nút G 333,3336 0 333,3336 Nút H 0 66,6664 66,6664 Nút I 0 66,6664 66,6664 Hình 4. 8: Thông lượng Dịch vụ theo Đường đi tại thời điểm t2 (Độ ưu tiên dịch vụ khác nhau) Tại thời điểm t3, tải Dịch vụ 2 giữ nguyên 200 và 100 cho nguồn III và IV tương ứng, nhưng Dịch vụ 1 tải giảm xuống còn 300 và 200 cho nguồn I và II tương ứng. Do
  51. 49 đó, nút A bị thắt cổ chai vì nó nhận được 300 yêu cầu (Dịch vụ 1) + 200 yêu cầu (Dịch vụ 2) trên giây, nhưng nút A chỉ có dung năng là 400 yêu cầu trên giây. Trong trường hợp này, hệ thống cấp phát quá số lớn hơn các đường đi để tận dụng triệt để hơn tài nguyên hệ thống, nhưng vẫn cung cấp sự ưu tiên cho lưu lượng Dịch vụ 1 vì nó mang lại nhiều lợi ích hơn. Cấp phát tài nguyên tại các nút mạng SON tại thời điểm t3 được chỉ ra như trong bảng 4.8. Bảng 4. 8: Thông lượng các nút thời điểm t3 (độ ưu tiên dịch vụ khác nhau) Dịch vụ 1 Dịch vụ 2 Tổng Nút A 300.0000 100.0000 400.0000 Nút B 272.1984 122.4451 394.6435 Nút C 273.8944 120.8155 394.7099 Nút D 268.8608 116.9148 385.7755 Nút E 0 100.0000 100.0000 Nút F 240.5458 0 240.5458 Nút G 259.4542 0 259.4542 Nút H 0 108.1081 108.1081 Nút I 0 91.8919 91.8919 Hình 4. 9: Thông lượng Dịch vụ theo Đường đi tại thời điểm t3 (Độ ưu tiên dịch vụ khác nhau) Tại thời điểm t4, tải Dịch vụ 2 tăng lên 500 và 500 cho nguồn III và IV, còn Dịch vụ 1 tải giữ nguyên là 300 và 200 cho nguồn I và II. Nút A lại bị thắt cổ chai vì nó nhận 300 yêu cầu trên giây từ Dịch vụ 1 và 500 yêu cầu trên giây từ Dịch vụ 2. Dung năng của nút A là 400 yêu cầu trên giây, vậy nó loại bỏ 400 yêu cầu trên giây. Vì Dịch vụ 1
  52. 50 có độ ưu tiên cao hơn, nút A sẽ loại bỏ 400 yêu cầu trên giây từ Dịch vụ 2. Cấp phát tài nguyên tại các nút mạng SON tại thời điểm t3 được chỉ ra như trong bảng 4.11. Bảng 4. 9: Thông lượng các nút thời điểm t4 (độ ưu tiên dịch vụ khác nhau) Dịch vụ 1 Dịch vụ 2 Tổng Nút A 300.0000 100.0000 400.0000 Nút B 250.0000 150.0000 400.0000 Nút C 250.0000 150.0000 400.0000 Nút D 250.0000 150.0000 400.0000 Nút E 0 150.0000 150.0000 Nút F 250.0000 0 250.0000 Nút G 250.0000 0 250.0000 Nút H 0 150.0000 150.0000 Nút I 0 150.0000 150.0000 Hình 4. 10: Thông lượng Dịch vụ theo Đường đi tại thời điểm t4 (Độ ưu tiên dịch vụ khác nhau) Từ 2 sơ đồ 4.5 và 4.6 ở trên cùng với 2 sơ đồ trong hình 4.3 và 4.4 ở phần trước, ta nhận thấy lưu lượng Dịch vụ 1 rõ ràng được ưu tiên hơn so với lưu lượng Dịch vụ 2 bởi vì nó có độ ưu tiên cao hơn, tức là nó có khả năng tận dụng nhiều tài nguyên hơn trên yêu cầu. 4.5 Kết luận chương Chương này đã đưa ra một nền tảng phân phối dịch vụ tự trị cho môi trường mạng hướng dịch vụ. Cơ sở của nền tảng là dựa trên phương pháp định tuyến dựa trên nội
  53. 51 dung, tiết kiệm chi phí, giá theo xung đột và có định tuyến tối ưu, điều khiển luồng. Thông qua liên kết trực tiếp với doanh nghiệp cung cấp dịch vụ, nền tảng phân phối dịch vụ cực đại giá trị tài nguyên IT của mạng. Từ các kết quả trên ta có thể thấy, lựa chọn độ ưu tiên cho mỗi dịch vụ có ảnh hướng lớn tới sự lựa chọn của nền tảng phân phối dịch vụ.
  54. 52 TỔNG KẾT VÀ HƯỚNG PHÁT TRIỂN ĐỀ TÀI Tổng kết đề tài Các kết quả chính trong luận văn đạt được như sau: Trình bày khái niệm mạng hướng dịch vụ như một kiến trúc viễn thông - phần mềm mới nổi và thảo luận các thách thức trong xây dựng các thiết bị mạng hướng dịch vụ cũng như việc kết nối chúng để hình thành một hệ thống mạng đích thực. Đưa ra một nền tảng phân phối dịch vụ tự trị cho định tuyến tối ưu và điều khiển luồng các yêu cầu dịch vụ tới nhiều nhà cung cấp trong mạng hướng dịch vụ. Nền tảng phân phối dịch vụ tự trị cung cấp một liên kết trực tiếp từ các dịch vụ của doanh nghiệp theo độ ưu tiên trong mạng hướng dịch vụ; luận văn cũng đưa ra các khái niệm về cực đại tiện ích mạng và định tuyến đa đường với lớp dịch vụ. Giới thiệu các giải pháp công nghệ mạng cung cấp dịch vụ của các hãng trên thế giới và một số ứng dụng triển khai ở Việt Nam của những giải pháp này. Hướng phát triển đề tài Bài toán định tuyến tối ưu theo tốc độ nguồn và đường đi: 푠 푠 max ∑ [푈푠( ) − ∑ ( , ᵧ , )] ≥0 s ∈ 𝒮 ∈퐹 với: Hy ≤ c trình bày trong luận văn vẫn chưa đánh giá toàn diện khi có hàm tắc nghẽn 푠 ( , ᵧ , ). Ngoài ra ta có thể thấy rằng, dung năng của tất cả các nút nền tảng phân phối dịch vụ là cần thiết để tính toán tốc độ và định tuyến tối ưu cho các yêu cầu dịch vụ. Dung năng được giả định đơn vị là yêu cầu trên giây; tuy nhiên, tổng quát, dung năng của các nút trung gian và nhà cung cấp là không định nghĩa theo yêu cầu trên giây. Ngoài ra, chúng điển hình định nghĩa theo vòng và bộ nhớ CPU có sẵn. Trong những trường hợp cụ thể, việc ghép là cần thiết để chuyển đổi đơn vị giải bài toán tối ưu này. Kết quả mô phỏng đạt được trong luận văn mới chỉ dừng ở phần nghiên cứu, kiểm định kết quả của định tuyến đa đường tối ưu tài nguyên mạng. Tuy nhiên, để phân tích, hiểu rõ các kết quả mô phỏng này thì cần những tính toán và hiểu biết sâu sắc hơn nữa về quá trình xử lý gói tin bên trong thiết bị, khả năng phần cứng của mạng và nhà cung cấp cũng như của người dùng.
  55. 53 TÀI LIỆU THAM KHẢO Tiếng Việt [1] Lê Nam Thắng, Luận văn thạc sĩ, Nghiên cứu cấu trúc IMS trong mạng thông tin di động, 12-2009. [2] KS. Nguyễn Thu Trang, TS. Lê Nhật Thăng,TS. Nguyễn Chấn Hùng, Th.S. Lâm Quang Tùng, Quá trình chuyển đổi từ Softswitch lên IMS. [3] Phạm Hùng Tiến, Đặng Hoài Đức, Báo cáo SOA, WEB trong Grid Computing [4] Thông tin công nghệ, [5] WEB20.VN, Tiếng Anh [6] ATIS, ATIS Service Oriented Networks (SON) Assessment and Work Plan, January 2009. [7] Boyd, Michael Grant and Stephen, CVX Users’ Guide, August, 2012. [8] M. Chiang, S. H. Low, A. R. Calderbank, and J. C. Doyle, Layering as Optimization Decomposition: A Mathematical Theory of Network Architectures, January 2007, p. 255–312. [9] Cisco, How Cisco IT Uses SONA Framework to Optimize Network Capabilities, 2007 [10] T. Erl, Service-Oriented Architecture: Concepts, Technology, and Design, Prentice Hall PTR, 2005. [11] M. Group, Service Delivery Platforms and Telecom Web Services, May 2004. [12] J. He, M. Bresler, M. Chiang, and J. Rexford, "Towards Robust Multi-Layer Traffic Engineering: Optimization of Congestion Control and Routing", June 2007. [13] Jiantao Wang, Lun Li, Steven H. Low, John C. Doyle, Cross-Layer Optimization in TCP/IP networks, California Institute of T echnology , Pasadena, CA. [14] M. P. a. G. Mayer, The IMS: IP Multimedia Concepts and Services, Wiley, 2009.
  56. 54 [15] Oracle, SOA Suite Quick Start Guide. [16] E. Review, Disciplined Convex Programming and CVX. [17] Robert D. Callaway, Adolfo Rodriguez, Michael Devetsikiotis, and Gennaro Cuomo, Challenges in Service-Oriented Networking, 2006. [18] Robert D. Callaway, Michael Devetsikiotis, Yannis Viniotis and Adolfo Rodriguez, An Autonomic Service Delivery Platform for Service-Oriented Network Environments. [19] Sakurai, Soichiro Tange and Hisayuki Sekine, Service Delivery Platfrom Implementing IP Multimedia Subsystem, Kenichi, 2009. Syed A. Ahson and Mohammad Ilyas, Service Delivery Platforms: Developing [20] and Deploying Converged Multimedia Services, CRC Press, Taylor & Francis Group, 2011.
  57. 55 Phụ lục 1: Tìm ma trận tất cả đường đi của mạng mô phỏng Để tìm được ma trận lưu toàn bộ các đường đi từ các nguồn yêu cầu dịch vụ tới nhà cung cấp dịch vụ tương ứng trước hết ta xây dựng file ma trận liền kề của tất cả các đỉnh trong topo mạng. Trong đó nếu 2 đỉnh kề nhau phần tử tương ứng có giá trị 1, nếu không kề nhau sẽ được gán giá trị 0 cho phần tử tương ứng. A B C D E F G H I A 0 1 1 0 0 0 0 0 0 B 1 0 1 1 1 1 0 0 0 C 1 1 0 1 0 0 0 0 1 D 0 1 1 0 0 0 1 1 0 E 0 1 0 0 0 0 0 0 0 F 0 1 0 0 0 0 0 0 0 G 0 0 0 1 0 0 0 0 0 H 0 0 0 1 0 0 0 0 0 I 0 0 1 0 0 0 0 0 0 Bảng 1: Ma trận các đỉnh kề topo mạng Thực hiện chương trình tìm đường đi chạy trong môi trường “Microsoft Visual Studio” ta tìm tất cả đường đi từ các nguồn I, II, III, IV tới các dịch vụ tương ứng. Sử dụng đoạn mã viết trong chương trình C++ như sau. //CHƯƠNG TRÌNH TÌM TẤT CẢ ĐƯỜNG ĐI CHO CÁC DỊCH VỤ 1 VÀ 2 //Input: File dữ liệu vào, dòng 1: số đỉnh của topo //dòng 2: đỉnh nguồn và gốc cần tìm tất cả đường đi giữa chúng //dòng thứ 3 đến n+2: ma trận các đỉnh kề //Output: File dữ liệu ra chứa tất cả các đường đi giữa đỉnh nguồn và gốc #include #include #define Filein "E:\\TopoMang.txt" //File dữ liệu vào chứa ma trận các đỉnh kề #define Fileout "E:\\MaTranDuongDi.txt"//File dữ liệu ra chứa tất cả đường đi using namespace std; int *L; //Lưu đường đi int *DanhDau; //Đánh dấu các đỉnh đã đi qua int A,n,S,D; //A: Ma trận các đỉnh kề; n: Số đỉnh; //S, D lần lượt là đỉnh nguồn và đích dạng số 0,1,2 //Đọc dữ liệu vào void Doc_File() { FILE *f; char S1,D1; //Đỉnh nguồn và đích dạng chữ cái A,B, C
  58. 56 fopen_s(&f,Filein,"r"); fscanf_s(f,"%d %c",&n,&S1); fscanf_s(f," %c",&D1); S=static_cast (S1)-65;//Đỉnh nguồn và đích sang chỉ số 0,1,2 D=static_cast (D1)-65; //65 là mã ASCII của A cout (S+65); //In các đỉnh dưới dạng chữ cái for (int i = 1; i " (L[i]+65); } //In các đường đi ra file 'MaTranDuongDi' dạng ma trận các phần tử 0 và 1 void InMaTran() { FILE *f; fopen_s(&f,Fileout,"at"); for(int i = 0; i<n; i++) fprintf_s(f,"%d ",DanhDau[i]); fprintf_s(f,"\n"," ");
  59. 57 fclose(f); } //Thủ tục tìm kiếm đường đi void Try(int SoCanh) { if(L[SoCanh-1] == D) //Đã đến đích, xuất đường đi { InDuongDi(SoCanh); InMaTran();} else { for(int i = 0; i ('H')-65)&&(i == (static_cast ('K')- 65-1))) goto end_for; if((D == static_cast ('K')-65)&&(i == (static_cast ('H')- 65-1))) goto end_for; //Nút trung gian không thể là H và K if(A[L[SoCanh-1]][i]>0 && DanhDau[i]==0) { L[SoCanh] = i; //Lưu đỉnh đã đi qua DanhDau[i] = 1; //Đánh dấu đỉnh đã đi qua Try(SoCanh+1); //Tìm kiếm đỉnh tiếp theo L[SoCanh] = 0; DanhDau[i] = 0; //Phục hồi đỉnh đã đi qua } end_for:; } } } //Chương trình chính int main() { Doc_File(); KhoiTao(); cout (S+65) (D+65); Try(1); cout<<endl; delete*A,DanhDau,L; //Giải phóng bộ nhớ return 0; }
  60. 58 Thực hiện chương trình và thay các giá trị nút nguồn và đích ta được kết quả như sau: Các đường đi từ nguồn I tới dịch vụ 1 (Đi từ nút A đến nút F hoặc G): A B C D E F G H I Đường đi từ nguồn I tới dịch vụ 1 1 1 0 0 0 1 0 0 0 A -> B -> F (Đường 1) 1 1 1 0 0 1 0 0 0 A -> C -> B -> F (Đường 2) 1 1 1 1 0 1 0 0 0 A -> C -> D -> B -> F (Đường 3) 1 1 1 1 0 0 1 0 0 A -> B -> C -> D -> G (Đường 4) 1 1 0 1 0 0 1 0 0 A -> B -> D -> G (Đường 5) 1 1 1 1 0 0 1 0 0 A -> C -> B -> D -> G (Đường 6) 1 0 1 1 0 0 1 0 0 A -> C -> D -> G (Đường 7) Các đường đi từ nguồn II tới dịch vụ 1 (Đi từ nút C đến nút F hoặc G): A B C D E F G H I Đường đi từ nguồn II tới dịch vụ 1 1 1 1 0 0 1 0 0 0 C -> A -> B -> F (Đường 8) 0 1 1 0 0 1 0 0 0 C -> B -> F (Đường 9) 0 1 1 1 0 1 0 0 0 C -> D -> B -> F (Đường 10) 1 1 1 1 0 0 1 0 0 C -> A -> B -> D -> G (Đường 11) 0 1 1 1 0 0 1 0 0 C -> B -> D -> G (Đường 12) 0 0 1 1 0 0 1 0 0 C -> D -> G (Đường 13) Các đường đi từ nguồn III tới dịch vụ 2 (Đi từ nút E đến nút H hoặc I): A B C D E F G H I Đường đi từ nguồn IV tới dịch vụ 2 1 1 1 1 1 0 0 1 0 E -> B -> A -> C -> D -> H (Đường 14) 0 1 1 1 1 0 0 1 0 E -> B -> C -> D -> H (Đường 15) 0 1 0 1 1 0 0 1 0 E -> B -> D -> H (Đường 16) 1 1 1 0 1 0 0 0 1 E -> B -> A -> C -> I (Đường 17) 0 1 1 0 1 0 0 0 1 E -> B -> C -> I (Đường 18) 0 1 1 1 1 0 0 0 1 E -> B -> D -> C -> I (Đường 19) Các đường đi từ nguồn IV tới dịch vụ 2 (Đi từ nút A đến nút H hoặc I): A B C D E F G H I Đường đi từ nguồn III tới dịch vụ 2 1 1 1 1 0 0 0 1 0 A -> B -> C -> D -> H (Đường 20) 1 1 0 1 0 0 0 1 0 A -> B -> D -> H (Đường 21) 1 1 1 1 0 0 0 1 0 A -> C -> B -> D -> H (Đường 22) 1 0 1 1 0 0 0 1 0 A -> C -> D -> H (Đường 23) 1 1 1 0 0 0 0 0 1 A -> B -> C -> I (Đường 24) 1 1 1 1 0 0 0 0 1 A -> B -> D -> C -> I (Đường 25) 1 0 1 0 0 0 0 0 1 A -> C -> I (Đường 26)
  61. 59 Vậy ma trận H cỡ 26*9 (26 đường đi, 9 nút) biểu diễn tất cả các đường đi của topo mạng đã đưa ra là: H= [1 1 0 0 0 1 0 0 0 1 1 1 0 0 1 0 0 0 1 1 1 1 0 1 0 0 0 1 1 1 1 0 0 1 0 0 1 1 0 1 0 0 1 0 0 1 1 1 1 0 0 1 0 0 1 0 1 1 0 0 1 0 0 1 1 1 0 0 1 0 0 0 0 1 1 0 0 1 0 0 0 0 1 1 1 0 1 0 0 0 1 1 1 1 0 0 1 0 0 0 1 1 1 0 0 1 0 0 0 0 1 1 0 0 1 0 0 1 1 1 1 1 0 0 1 0 0 1 1 1 1 0 0 1 0 0 1 0 1 1 0 0 1 0 1 1 1 0 1 0 0 0 1 0 1 1 0 1 0 0 0 1 0 1 1 1 1 0 0 0 1 1 1 1 1 0 0 0 1 0 1 1 0 1 0 0 0 1 0 1 1 1 1 0 0 0 1 0 1 0 1 1 0 0 0 1 0 1 1 1 0 0 0 0 0 1 1 1 1 1 0 0 0 0 1 1 0 1 0 0 0 0 0 1]
  62. 60 Phụ lục 2: Hàm lồi và CVX Định nghĩa hàm lồi: Cho I là một khoảng trong miền số thực R và hàm số f : I → R. f được gọi là hàm lồi nếu thỏa mãn bất đẳng thức sau: f [λx + (1 − λ)y] ≤ λf (x) + (1 − λ)f (y) với mọi x, y ∈ I và mọi λ ∈ [0, 1]. f được gọi là hàm lồi chặt nếu bất đẳng thức ngặt với các điểm x, y phân biệt và λ ∈ (0; 1). Giới thiệu CVX: CVX là một hệ thống mô hình dùng cho lập trình hàm lồi (disciplined convex programming). Trong đó lập trình hàm lồi là chương trình dùng để giải quyết các bài toán tối ưu hàm lồi/ quy hoạch lồi, nó được mô tả bởi một tập hữu hạn các quy tắc cho phép phân tích và giải bài toán hiệu quả. CVX có thể giải các bài toán chuẩn như lập trình tuyến tính, chương trình toàn phương, chương trình nón bậc hai và chương trình nửa xác định. Ưu điểm của CVX so với sử dụng công cụ giải trực tiếp chính là sự đơn giản hơn rất nhiều. CVX có thể được thực hiện trong MATLAB, chuyển MATLAB thành một ngôn ngữ mô hình hóa tối ưu. CVX phân cách với code MATLAB bởi bắt đầu với cvx_begin và kết thúc với cvx_end. Các biến được khai báo sử dụng lệnh variable(s). Khai báo hàm mục tiêu sử dụng hàm minimize hay maximize tùy theo yêu cầu. (Hàm khi gọi minimize phải là hàm lồi; hàm khi gọi maximize phải là hàm lõm). Chi tiết về CVX có thể xem tại cvx Users’ Guide. [7]