1. Trang chủ
  2. » Công Nghệ Thông Tin

DỊCH vụ VIDEO THEO yêu cầu dựa TRÊN LOCAL PROXY MODEL

56 195 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 56
Dung lượng 804,52 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

- Trong phương pháp dựa trên unicast, có 3 cách để phân phối video streaming qua Internet: tập trung, Proxy và mạng phân phối nội dung CDN +Trong phương pháp tập trung, một Server với bă

Trang 2

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI

-

Lê Thị Trang

DỊCH VỤ VIDEO THEO YÊU CẦU DỰA TRÊN LOCAL PROXY MODEL

Chuyên ngành: Công nghệ thông tin

LUẬN VĂN THẠC SỸ KỸ THUẬT Ngành: Công nghệ thông tin

NGƯỜI HƯỚNG DẪN KHOA HỌC:

PGS.TS Hà Quốc Trung

Hà Nội – Năm 2015

Trang 3

CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM

Độc lập – Tự do – Hạnh phúc

BẢN XÁC NHẬN CHỈNH SỬA LUẬN VĂN THẠC SĨ

Họ và tên tác giả luận văn: Lê Thị Trang

Đề tài luận văn: Dịch vụ video theo yêu cầu dựa trên Local Proxy model

Chuyên ngành: Công nghệ thông tin

Mã số SV: CB120118

Tác giả, Người hướng dẫn khoa học và Hội đồng chấm luận văn xác nhận tác giả đã sửa chữa, bổ sung luận văn theo biên bản họp Hội đồng ngày 25 tháng 4 năm 2015 với các nội dung sau:

- Làm rõ tham khảo luận văn của năm trước

Tác giả đã đến trích dẫn tài liệu tham khảo tại mục 2.2.1 ở trang 16, mục 4.2.1 ở trang số

33, mục 4.2.3 ở trang số 37

- Làm rõ tham khảo các công trình, tài liệu tham khảo

Tác giả đã trích dẫn đến tài liệu tham khảo tại mục 2.1.1 ở trang số 11, mục 3.4 ở trang 28 Tác giả đã chỉ ra những phần sử dụng lại, những phần tác giả xây dựng phát triển tại mục

5 1 ở trang số 46

- Mô tả kiến trúc hệ thống

Tác giả đã trình bày tại mục 3.3 ở trang số 26, 27, 28 và mục 5.1 ở trang số 46, 47

- Mô tả cài đặt chương trình thử nghiệm

Tác giả đã trình bày tại mục 5.1 ở trang số 46, 47

- Mô tả kịch bản thử nghiệm

Tác giả đã trình bày tại mục 5.3.1 ở trang số 50

- Chứng minh các số liêu

Tác giả đã trình bày tại mục 5.4 ở trang số 51, 52

Giáo viên hướng dẫn

PGS.TS Hà Quốc Trung

Ngày 18 tháng 5 năm 2015 Tác giả luận văn

Lê Thị Trang CHỦ TỊCH HỘI ĐỒNG

PGS.TS Nguyễn Thị Hoàng Lan

Trang 4

1

MỤC LỤC

MỤC LỤC 1

LỜI CẢM ƠN 4

DANH MỤC THUẬT NGỮ 5

DANH MỤC HÌNH VẼ 6

DANH MỤC BẢNG BIỂU 7

CHƯƠNG 1 - TỔNG QUAN 8

CHƯƠNG 2 - MÔ HÌNH LOCAL PROXY 11

2.1 Mô hình Client – Server 11

2.1.1 Khái niệm 11

2.1.2 Ưu, nhược điểm của mô hình Client-Server 12

2.2 Mô hình mạng ngang hàng Peer to Peer 13

2.2.1 Khái niệm 13

2.2.2 Ưu, nhược điểm của mô hình Peer to Peer 17

2.3 Nhu cầu và hướng triển khai chuyển đổi từ giao thức Client-Server thành Peer to Peer 18

2.4 Mô hình Local Proxy 19

CHƯƠNG 3 - DỊCH VỤ VIDEO THEO YÊU CẦU THEO MÔ HÌNH CLIENT – SERVER 22

3.1 Giới thiệu dịch vụ video theo yêu cầu 22

3.2 Thành phần hệ thống video theo yêu cầu 23

3.2.1 Network Communication 23

3.2.2 Clients 23

3.2.3 Máy chủ streaming 23

3.2.4 Giao thức sử dụng trong hệ thống VoD ở mô hình Client-Server 25

3.3 Kiến trúc của hệ thống 26

3.4 Một số điểm tồn tại của dịch vụ video theo yêu cầu 28

CHƯƠNG 4 - THIẾT KẾ ỨNG DỤNG THEO MÔ HÌNH LOCAL PROXY 31

4.1 Các chức năng của ứng dụng ở mô hình Client–Server 31

4.2 Cài đặt ứng dụng theo mô hình Local Proxy 33

4.2.1 Phân tích hệ thống 33

Trang 5

2

4.2.2 Phân tích các module trong ứng dụng theo mô hình Local Proxy 36

4.2.3 Giao thức sử dụng trong hệ thống P2P 36

4.3 Thiết kế chi tiết các chức năng của ứng dụng theo mô hình Local Proxy 38

4.3.1 Chức năng Đăng ký 38

4.3.2 Chức năng Đăng nhập 40

4.3.3 Chức năng Upload 41

4.3.4 Chức năng Search 42

4.3.5 Chức năng Play 44

CHƯƠNG 5 – CÀI ĐẶT CHƯƠNG TRÌNH VÀ ĐÁNH GIÁ THỬ NGHIỆM 46

5.1 Cài đặt chương trình 46

5.2 Giao diện chương trình 47

5.2.1 Form chính của chương trình 47

5.2.2 Form chức năng 48

5.3 Thử nghiệm 50

5.3.1 Kịch bản thử nghiệm 50

5.3.2 Kết quả thử nghiệm 50

5.4 Kết luận và hướng phát triển 51

TÀI LIỆU THAM KHẢO 53

Trang 6

3

LỜI CAM ĐOAN

Luân văn thạc sĩ “Dịch vụ video theo yêu cầu dựa trên Local Proxy model”, chuyên ngành Công nghệ thông tin là công trình của cá nhân tôi dưới sự hướng dẫn của PGS.TS.Hà Quốc Trung Các nội dung nghiên cứu và kết quả trình bày trong luận văn là trung thực rõ ràng Các tài liệu tham khảo, nội dung trích dẫn đã ghi rõ nguồn gốc

Hà Nội, ngày 10 tháng 04 năm 2015

Tác giả luận văn

Lê Thị Trang

Trang 7

Cuối cùng, em xin gửi lời cám ơn tới gia đình, bạn bè, cơ quan công tác đã giúp đỡ em trong quá trình thực hiện luận văn này

Hà Nội, ngày 10 tháng 04 năm 2015

Học viên

Lê Thị Trang

Trang 8

5

DANH MỤC THUẬT NGỮ

1 Peer to peer Mạng ngang hàng

3 Video on Demand Video theo yêu cầu

4 Real Time Streaming Protocol Giao thức mạng điều khiển quá trình

streaming video hay streaming audio

5 Real-time Transport Protocol Giao thức chuẩn định dạng cho gói tin

video hay audio được truyền trên mạng

6 Real Time Transport Control

Protocol

Giao thức điều khiển truyền tải thời gian thực

7 Distributed Hash Table Bảng băm phân tán

8 Streaming video Kỹ thuật truyền luồng video

12 Upload Tải file lên hệ thống

13 Search Tìm kiếm trên hệ thống

Trang 9

6

DANH MỤC HÌNH VẼ

Hình 1 Mô hình Client-Server 11

Hình 2 Mô hình Peer to Peer 14

Hình 3 Mô hình Local Proxy 20

Hình 4 Một phiên làm việc dựa trên giao thức RTSP 26

Hình 5 Kiến trúc hệ thống 26

Hình 6 Mô hình hoạt động tổng quát của hệ thống 28

Hình 7 Các thành phần hệ thống theo mô hình Local Proxy 35

Hình 8 Quy trình Đăng ký 38

Hình 9 Quy trình Đăng nhập 40

Hình 10 Quy trình Upload video 41

Hình 11 Quy trình tìm kiếm video 42

Hình 12 Quy trình xem video 44

Hình 13 Cài đặt hệ thống theo mô hình Local Proxy 46

Hình 14 Giao diện form kết nối vào hệ thống 48

Hình 15 Giao diện Đăng nhập/Đăng ký 48

Hình 16 Giao diện Search video 48

Hình 17 Giao diện Upload video 49

Hình 18 Giao diện Play video 49

Trang 10

7

DANH MỤC BẢNG BIỂU

Bảng 1 Chức năng cơ bản của ứng dụng 31

Bảng 2 Mô tả hoạt động của Local Streaming Server 34

Bảng 3 Các bước Đăng ký tài khoản người dùng mới 39

Bảng 4 Các bước Đăng nhập 40

Bảng 5 Các bước Upload video 42

Bảng 6 Các bước tìm kiếm video 43

Bảng 7 Các bước xem video 44

Bảng 8 Chức năng của hệ thống ở mô hình Client–Server và mô hình Local Proxy 50

Trang 11

8

CHƯƠNG 1 - TỔNG QUAN Hiện nay, có nhiều nhà cung cấp dịch vụ truyền thông đa phương tiện và hầu hết các ứng dụng này đều được xây dựng dựa trên mô hình Client-Server Ở mô hình này, máy chủ sẽ tiếp nhận và xử lý tất cả các yêu cầu của rất nhiều khách hàng Với cách hoạt động như thế thì mô hình Client-Server có ưu điểm là thiết kế giao thức rất đơn giản, chỉ có 2 thành phần tham gia là Client và Server Tuy nhiên, chỉ

có một Server phục vụ nhiều Client dẫn đến quá tải băng thông, cổ chai tại Server, tính mở rộng kém, Đặc biệt là dịch vụ cung cấp các dữ liệu đa phương tiện, có số lượng người xem rất lớn, lượng chương trình phong phú, tiêu tốn lượng lớn băng thông mạng và cần nhiều dung lượng lưu trữ, thì cần có những giải pháp đưa ra để giải quyết vấn đề nêu trên Đến thời điểm này, đã có nhiều giải pháp được đưa ra nhằm cải tiến hiệu năng khi số lượng tải vượt quá một cận nào đó như: phương pháp dựa trên unicast và dựa trên multicast

- Trong phương pháp dựa trên unicast, có 3 cách để phân phối video streaming qua Internet: tập trung, Proxy và mạng phân phối nội dung CDN

+Trong phương pháp tập trung, một Server với băng thông lớn được sử dụng

để phân bổ các video tới người dùng Phương pháp này đơn giản hơn trong triển khai và quản lý song vẫn bộc lộ những hạn chế như đã nêu ở trên

+Trong phương pháp Proxy, Proxy Server được đặt gần với miền Client để lưu trữ một phần nhỏ của mỗi video Người sử dụng có thể nhận một phần video từ Proxy Server gần họ Do đó, phương pháp này làm giảm gánh nặng của máy chủ streaming và tải lưu lượng qua mạng WAN Tuy nhiên, phương pháp này yêu cầu triển khai và quản lý proxy tại rất nhiều địa điểm do đó làm tăng giá thành

+ Trong phương pháp CDN (Content Delivery Network), video streaming được phân phối bởi một đối tác thứ ba, được gọi là CDN Các mạng phân bổ nội dung như Akamai, triển khai rất nhiều các Server tại biên của mạng Internet Người dùng có thể yêu cầu video từ Server thích hợp nhất Nên nó giúp giảm lưu lượng qua mạng WAN và làm giảm trễ Song giá của phương pháp CDN này khá cao do giá thành được tính theo lưu lượng

Trang 12

9

- Phương pháp dựa trên multicast phục vụ nhiều người dùng đồng thời với hiệu quả băng thông cao Network-layer muticast dùng router thiết lập một cây mà người sử dụng như là các lá của cây Mặc dù sử dụng Network layer multicast hiệu quả, nhưng phương pháp này không được triển khai rộng vì Network layer multicast yêu cầu các router để quản lý và duy trì trạng thái của các nhóm peer, điều này làm tăng độ phức tạp tại lớp IP Thứ hai, khó khăn trong lớp truyền tải để điểu khiển luồng và điều khiển tắc nghẽn trong Network layer multicast

Mô hình mạng ngang hàng P2P (Peer to Peer) cho phép giải quyết vấn đề nêu trên do không còn máy chủ tập trung nữa, cho phép tất cả các thành phần khác tương tác với nhau một cách bình đẳng Trong mạng ngang hàng mỗi peer không chỉ download dữ liệu từ mạng mà còn upload dữ liệu để người dùng khác có thể download Với đặc điểm đó, công nghệ này không chỉ cho phép hệ thống đáp ứng được lượng lớn truy cập tăng đột biến mà còn có khả năng mở rộng quy mô Hơn nữa, giải pháp P2P không cần đến bất kỳ một yêu cầu đặc biệt nào về phần cứng mạng nên rất dễ triển khai Nên các ứng dụng P2P ngày càng phổ biến, trong số đó

có thể kể ra các ứng dụng chia sẻ file (BitTorrent, uTorrent, eMule), các ứng dụng hội thoại qua mạng VoIP (Skype)… Tuy có rất nhiều ưu điểm, nhưng việc xây dựng 1 hệ thống cung cấp video theo yêu cầu dựa trên mạng ngang vẫn còn đang gặp nhiều khó khăn, thách thức Mức độ tham gia đóng góp tài nguyên của các peer không đồng đều, các peer có thể tham gia hoặc ngắt kết nối khỏi hệ thống vào thời điểm bất kỳ Trong khi đó ứng dụng phân phối video theo yêu cầu lại cần hiệu năng thời gian thực và băng thông lớn Điều này đã khiến cho việc xây dựng các ứng dụng VoD (Video on Demand) dựa trên mạng ngang hàng trở nên phức tạp hơn hẳn so với mô hình Client-Server [1]

Từ những phân tích, đánh giá trên, luận văn xin đề xuất:

1 Nghiên cứu và tìm hiểu cách thức chuyển đổi từ giao thức Client-Server sang P2P sử dụng mô hình Local Proxy

2 Áp dụng cách thức chuyển đổi này vào giao thức truyền video theo yêu cầu Trên cơ sở đó, tác giả xây dựng ứng dụng dựa trên mô hình Local Proxy (trong

Trang 13

10 khuôn khổ luận văn sẽ giới hạn các chức năng của ứng dụng ở mức chia sẻ video theo yêu cầu)

Trang 14

11

CHƯƠNG 2 - MÔ HÌNH LOCAL PROXY

Mô hình Local Proxy là một mô hình cho phép có thể thiết kế một ứng dụng theo mô hình Client-Server nhưng cài đặt ứng dụng đó bằng mô hình mạng ngang hàng P2P

Để hiểu rõ cách thức hoạt động của mô hình Local Proxy, trước tiên ta đi tìm hiểu cách thức hoạt động, ưu nhược điểm của mô hình Client-Server và Peer to Peer

2.1 Mô hình Client – Server

2.1.1 Khái niệm

[3]Mô hình Client-Server là mô hình phổ biến và được chấp nhận rộng rãi trong các hệ thống phân tán Mô hình này chỉ có 2 thành phần tham gia đó là:

- Client: chủ động kết nối đến Server để gửi yêu cầu, chờ nhận kết quả trả về

và xử lý kết quả Client chỉ có thể giao tiếp với Server mà không thể giao tiếp trực tiếp với các Client khác

- Server: có vai trò thụ động và đáp ứng các yêu cầu từ Client bằng cách xử lý từng yêu cầu và trả lại kết quả cho Client

Hình 1 Mô hình Client-Server

Mô hình Client-Server cung cấp một cách tiếp cận tổng quát để chia sẻ tài nguyên trong các hệ thống phân tán Mô hình này có thể được cài đặt bằng rất nhiều môi trường phần cứng và phần mềm khác nhau Các máy tính được sử dụng để chạy

Client Client

Client

Client

Client

Client Server

Trang 15

12

các tiến trình Client-Server có nhiều kiểu khác nhau và không cần thiết phải phân biệt giữa chúng; cả tiến trình Client và tiến trình Server đều có thể chạy trên cùng một máy tính

Mô hình truyền tin Client-Server hướng tới việc cung cấp dịch vụ Quá trình trao đổi dữ liệu được diễn ra như sau:

- Client gửi yêu cầu tới Server

- Server xử lý yêu cầu

- Server truyền lại kết quả xử lý

Mô hình truyền tin này liên quan đến việc truyền hai thông điệp và một dạng đồng bộ hóa cụ thể giữa Client và Server Tiến trình Server phải nhận thức được thông điệp được yêu cầu ở bước một ngay khi nó đến và hành động phát ra yêu cầu trong Client phải được tạm dừng và buộc tiến trình Client ở trạng thái chờ cho tới khi nó nhận được thông điệp do Server gửi tới

Các thao tác cơ bản trong mô hình này thường là gửi và nhận hay yêu cầu và trả lời

2.1.2 Ưu, nhược điểm của mô hình Client-Server

* Ưu điểm

- Tính tập trung: Tài nguyên được lưu tập trung nên dễ dàng để sao lưu các tập tin, bảo vệ chống lại các mối đe dọa độc hại và chia sẻ tài nguyên Điều này giúp tiết kiệm không chỉ là tiền, mà còn là không gian có giá trị Một không gian lưu trữ tập trung làm cho nó dễ dàng hơn để sao lưu và lấy các tập tin trong trường hợp mất

dữ liệu Ngoài ra, máy chủ có thể quản lý chính sách mạng, làm cho một mạng an toàn hơn

- Tính linh hoạt: Do lưu trữ tập trung nên dễ dàng để triển khai cập nhật hoặc nâng cấp Một mạng Client-Server có thể tự động triển khai toàn hệ thống thay đổi khác nhau, từ một nâng cấp lớn cho hệ điều hành mới để cập nhật thường xuyên như các tập tin dữ liệu chống virus hoặc các bản vá lỗi của Microsoft với sự can thiệp của người dùng tối thiểu Nâng cấp và cập nhật cũng có thể làm việc trong nền

Trang 16

- Nó có thể làm tăng khả năng của máy nhỏ, giúp các máy nhỏ thực hiện được những công việc mà trước đây chỉ thực hiện được trên các máy lớn, từ đó dẫn tới giảm chi phí thiết bị

* Nhược điểm:

- Chi phí cho máy Server lớn: Các máy chủ trung tâm phải đủ mạnh để duy trì

và chia sẻ tài nguyên với các máy tính khác trên mạng Điều này đòi hỏi một chi phí đáng kể

- Sự phụ thuộc: Mô hình mạng Client-Server dựa trên chức năng phụ thuộc hoàn toàn vào Server Nếu Server bị trục trặc, toàn bộ mạng không thể hoạt động

- Thắt cổ chai: Server phải xử lý phần lớn công việc điều này có thể gây ra tắc nghẽn mạng trên mạng và làm chậm thời gian trả lời cho các Client

- Bảo trì: Mô hình Client-Server thường đòi hỏi một đội ngũ nhân viên để quản lý và duy trì các thiết bị và mạng Trong mô hình khác, chẳng hạn như peer to peer, công việc này được phân phối cho các peer

- An toàn: Bởi vì tất cả các thông tin quan trọng được lưu trữ trên Server, điều này tạo ra một mối quan tâm an ninh Tập trung các thông tin và dữ liệu này phải được bảo vệ từ tin tặc nguy hiểm, sự cố, các mối đe dọa tiềm năng

Mô hình mạng ngang hàng (Peer to Peer hay P2P) được xem như một giải pháp sẽ khắc phục nhược điểm của mô hình mạng Client-Server

2.2 Mô hình mạng ngang hàng Peer to Peer

2.2.1 Khái niệm

Mạng ngang hàng Peer to Peer là một mạng máy tính hoạt động không dựa trên các máy chủ trung tâm, mà phân tán trên đa số các thành phần của mạng

Trang 17

14

Hình 2 Mô hình Peer to Peer Trong mạng P2P, máy chủ và máy khách được tích hợp trên cùng một máy tính, tất cả các máy tham gia đều bình đẳng và được gọi là peer Mô hình này được thiết lập thông qua một mạng logic bao trùm trên mạng vật lý (OverlayNetwork) Mạng P2P được ứng dụng trong việc chia sẻ tệp, trong việc xây dựng các ứng dụng cộng tác, các ứng dụng đa phương tiện hoặc để truyền dữ liệu thời gian thực như điện thoại VoIP

Mạng P2P có những đặc điểm như:

+ Chia sẻ tài nguyên: mỗi peer tham gia sẽ đóng góp tài nguyên vào mạng + Networked: tất cả các node được liên kết với các node khác trong hệ thống P2P và tập các node là thành viên của một đồ thị liên kết Khi đồ thị không được kết nối, mạng chồng phủ được coi như là bị phân chia

+ Phân quyền: trạng thái của hệ thống P2P được xác định bởi hoạt động chung của các peer, và không có điểm điều khiển tập trung Tuy nhiên một vài hệ thống đảm bảo an ninh vẫn sử dụng một login Server trung tâm Trong rất nhiều thiết kế, tính chất này có thể thay đổi do tồn tại các peer hoạt động đặc biệt như là super peer hoặc rely peer

+ Tự trị: sự tham gia của các peer trong hệ thống P2P được xác định cục bộ,

và không có phạm vi quản trị riêng lẻ trong hệ thống

Peer

Peer

Trang 18

15

+ Phạm vi: Một hệ thống P2P có thể có tới hàng triệu peer hoạt động đồng thời, điều này có nghĩa tài nguyên sử dụng tại mỗi peer tăng theo kích cỡ của mạng chồng phủ

+ Sự ổn định: Hệ thống P2P có thể được coi là ổn định trong một churm rate cho phép Điều này cho phép duy trì đồ thị kết nối và có khả năng xác định tuyến trong một giới hạn phù hợp

Mạng ngang hàng thường được phân làm:

* Mạng P2P thuần túy:

- Các máy trạm có vai trò vừa là máy chủ vừa là máy khách

- Không có máy chủ trung tâm quản lý mạng

- Không có máy định tuyến (bộ định tuyến) trung tâm, các máy trạm có khả năng tự định tuyến

- Sử dụng các trạm định tuyến để xác định địa chỉ IP của các máy trạm

Một mạng đồng đẳng không cấu trúc khi các liên kết giữa các nút mạng trong mạng phủ được thiết lập ngẫu nhiên (tức là không theo quy luật nào) Những mạng như thế này dễ dàng được xây dựng vì một máy mới khi muốn tham gia mạng có thể lấy các liên kết có sẵn của một máy khác đang ở trong mạng và sau đó dần dần

tự bản thân nó sẽ thêm vào các liên kết mới của riêng mình Khi một máy muốn tìm một dữ liệu trong mạng đồng đẳng không cấu trúc, yêu cầu tìm kiếm sẽ được truyền trên cả mạng để tìm ra càng nhiều máy chia sẻ càng tốt Việc tìm kiếm các đơn vị

dữ liệu được thực hiện bằng bảng băm phân tán DHT (Distributed Hash Table) Với cách thức hoạt động như thế, không có gì đảm bảo tìm kiếm sẽ thành công Việc tìm kiếm đối với các dữ liệu được chia sẻ trên nhiều máy thì tỉ lệ thành công là khá cao, ngược lại, nếu dữ liệu chỉ được chia sẻ trên một vài máy thì xác

Trang 19

16

suất tìm thấy là khá nhỏ Tính chất này là hiển nhiên vì trong mạng đồng đẳng không cấu trúc, không có bất kì mối tương quan nào giữa một máy và dữ liệu nó quản lý trong mạng, do đó yêu cầu tìm kiếm được chuyển một cách ngẫu nhiên đến một số máy trong mạng Số lượng máy trong mạng càng lớn thì khả năng tìm thấy thông tin càng nhỏ

Một nhược điểm khác của hệ thống này là do không có định hướng, một yêu cầu tìm kiếm thường được chuyển cho một số lượng lớn máy trong mạng làm tiêu tốn một lượng lớn băng thông của mạng, dẫn đến hiệu quả tìm kiếm chung của mạng thấp

Hầu hết các mạng đồng đẳng phổ biến là không cấu trúc như Napster, Gnutella, FastTrack và eDonkey2000

Mạng đồng đẳng có cấu trúc khắc phục nhược điểm của mạng không cấu trúc bằng cách sử dụng hệ thống bảng băm phân tán Hệ thống này định nghĩa liên kết giữa các nút mạng trong mạng phủ theo một thuật toán cụ thể, đồng thời xác định chặt chẽ mỗi nút mạng sẽ chịu trách nhiệm đối với một phần dữ liệu chia sẻ trong mạng Với cấu trúc này, khi một máy cần tìm một dữ liệu, nó chỉ cần áp dụng một giao thức chung để xác định nút mạng nào chịu trách nhiệm cho dữ liệu đó và sau

đó liên lạc trực tiếp đến nút mạng đó để lấy kết quả

Các ứng dụng phổ biến của P2P chủ yếu tập trung vào các ứng dụng chia sẻ tệp Một số giao thức chia sẻ tệp sử dụng mô hình P2P như Emule, Napster, Kad, Gnutella, G2 and FastTrack… Trái ngược với các ứng dụng theo mô hình Client-Server, trong các ứng dụng chia sẻ tệp P2P, hiệu năng của hệ thống sẽ càng được cải thiện khi càng có nhiều peer tham gia vào giao thức Như vậy, nếu một Client càng hỗ trợ nhiều giao thức, khả năng có thể tìm thấy một peer có chứa dữ liệu cần thiết càng lớn

Tính chất phân tán của mạng ngang hàng giúp cho mạng hoạt động tốt khi một

số máy gặp sự cố Đối với cấu trúc tập trung, chỉ cần máy chủ gặp sự cố thì cả hệ thống sẽ ngưng trệ[1]

Trang 20

17

2.2.2 Ưu, nhược điểm của mô hình Peer to Peer

* Ưu điểm

Do tính chất phân tán nên mạng này có nhiều ưu điểm:

- Người sử dụng có thể kiểm soát việc dùng chung tài nguyên (máy in, chu trình xử lý, lưu trữ …), tận dụng được tài nguyên của tất cả các máy tính trong mạng, có phân bố lưu lượng hợp lý để tránh tắc ngẽn

- Không phụ thuộc vào các máy tính khác trong hoạt động của mình Tính chất phân tán của mạng đồng đẳng cũng giúp cho mạng hoạt động tốt khi một số máy gặp sự cố Đối với cấu trúc tập trung, chỉ cần máy chủ gặp sự cố thì cả hệ thống sẽ ngưng trệ

- Tăng cường khả năng cân bằng tải trong mạng Trong mô hình mạng ngang hàng, chỉ có yêu cầu truy vấn được thực hiện giữa máy tính tham gia mạng với máy chủ, còn vấn đề truyền file được thực hiện giữa hai máy tính tham gia mạng với nhau, điều này dẫn đến việc phân bố tải đều trên hệ thống mạng

- Không phải đầu tư thêm về phần cứng và phần mềm máy chủ

- Không cần người quản trị mạng

- Máy trạm phải gánh thêm việc phục vụ chia sẻ tài nguyên

- Máy trạm không có khả năng kiểm soát nhiều liên kết như một máy chủ

- Thiếu tính tập trung, rất khó tìm kiếm dữ liệu

- Không có khả năng lưu trữ tập trung

- Mỗi người sử dụng trên máy trạm phải có khả năng quản trị trên chính hệ thống của mình

- Khả năng bảo mật kém, khó kiểm soát do dữ liệu là phân tán

- Quản lý thiếu tập trung, các mạng ngang hàng rất khó làm việc với nhau

Trang 21

mà kết hợp được ưu điểm của cả hai mô hình kể trên là một nhu cầu rất cần thiết

Mô hình Local Proxy được giới thiệu, đó là sự chuyển đổi từ giao thức Server thành Peer to Peer Với mô hình Local Proxy, ưu điểm của cả hai mô hình kể trên được kết hợp, đồng thời khắc phục được một số nhược điểm của cả 2 mô hình

Client-đó

Dựa trên hệ thống bảng băm phân tán, mô hình Local Proxy được xây dựng để đáp ứng yêu cầu thiết kế ứng dụng khi sử dụng sẽ giống với mô hình Client-Server nhưng giao tiếp giữa các máy với nhau là trực tiếp không thông qua một máy chủ trung tâm, chúng giao tiếp với nhau như trong mô hình Peer to Peer

[2]Hướng triển khai của mô hình này là giữ nguyên việc thiết kế giao thức theo kiến trúc Client-Server không thay đổi, trong khi đó nhờ vào hệ thống bảng băm phân tán DHT, các Client có thể dễ dàng gửi yêu cầu dữ liệu đến chính xác máy trạm đóng vai trò Server

Để chuyển đổi từ giao thức Client-Server sang Peer to Peer, ta cần thực hiện các bước như sau:

- Xác định các giao thức được thực thi trên hệ thống Client- Server

- Phân tích chức năng, nhiệm vụ của các giao thức trong hệ thống

Client-Server

Trang 22

19

- Chuyển đổi các chức năng sang mô hình Local Proxy, các máy sẽ yêu cầu dữ liệu từ hệ thống P2P

- Xây dựng ứng dụng và cài đặt

2.4 Mô hình Local Proxy

Khi thiết kế ứng dụng phân tán, các máy muốn giao tiếp với nhau thì phải theo một số giao thức nào đó, cho dù ứng dụng đó được thiết kế theo mô hình tập trung hay phân tán Trong mô hình Client-Server, giao thức này xác định việc tương tác giữa mỗi máy khách với máy chủ Tương tác giữa máy khách với máy khách được thực hiện trên cơ sở giao tiếp máy khách – máy chủ Trong các ứng dụng P2P, cách thức giao tiếp giữa máy với máy là trực tiếp, không cần một máy chủ trung tâm (Server) [5], [6], [7]

Mô hình Local Proxy là một mô hình cho phép có thể thiết kế một ứng dụng theo mô hình Client-Server nhưng cài đặt ứng dụng đó theo mô hình P2P

Mục đích của mô hình Local Proxy là:

- Thiết kế giao thức sử dụng kiến trúc Client-Server cho đơn giản vì chỉ có 2 thành phần là Client và Server

- Triển khai giao thức sử dụng giao tiếp P2P để đạt hiệu suất tốt hơn

Phương pháp được đưa ra là giữ nguyên việc thiết kế giao thức theo kiến trúc Client-Server không thay đổi, trong khi đó việc triển khai sẽ theo hệ thống giao tiếp P2P Như vậy, máy Client vẫn giữ nguyên không thay đổi Máy chủ sẽ đảm nhận yêu cầu từ máy khách và chuyển yêu cầu đó tới mạng P2P; Nó đóng vai trò là máy chủ cục bộ hoạt động như một proxy Đây là lý do tại sao máy chủ được gọi là Local Proxy và mô hình được gọi là mô hình Local Proxy

Thiết kế của mô hình Local Proxy được thể hiện như trong Hình 3 dưới đây:

Trang 23

20

Hình 3 Mô hình Local Proxy

Hệ thống này bao gồm những thành phần sau:

• The Client module: giống như module máy khách trong kiến trúc Server truyền thống

Client-• The Local Proxy module: mỗi máy Client được cài đặt một Local Proxy module Module này tương tác với module Client và cập nhật dữ liệu cục bộ

• The P2P subsystem agent: chấp nhận yêu cầu chia sẻ và cập nhật dữ liệu, truyền tải dữ liệu trên mạng P2P

Mô hình Local Proxy đưa ra các cơ hội để phát triển một ứng dụng P2P sử dụng thiết kế của kiến trúc Client-Server Tất nhiên, giao thức và logic ứng dựng theo quan điểm giao tiếp máy với máy sẽ được thay thế bằng giao tiếp giữa P2P Agent và hệ thống con P2P

Tương tác này trở nên bình thường như một cơ chế chia sẻ dữ liệu đơn giản, nhưng đạt được hiệu quả tốt, cấu trúc dữ liệu được thiết kế tốt theo logic của ứng dụng và giao thức P2P

Trang 24

21

Tuy nhiên, hiệu quả của việc ứng dụng mô hình Local Proxy phụ thuộc nhiều vào loại hình thông tin trao đổi và cách thức tương tác giữa các thành phần trong ứng dụng phân tán

Trong báo cáo này, luận văn xin trình bày việc xây ứng dụng chia sẻ video theo yêu cầu dựa trên mô hình Local Proxy Chất lượng dịch vụ mà ứng dụng này đòi hỏi được khảo sát, đồng thời hiệu quả của việc áp dụng mô hình Local Proxy theo các tiêu chí chất lượng dịch vụ cũng được đánh giá

Trang 25

22

CHƯƠNG 3 - DỊCH VỤ VIDEO THEO YÊU CẦU THEO MÔ HÌNH

CLIENT – SERVER 3.1 Giới thiệu dịch vụ video theo yêu cầu

Dịch vụ video theo yêu cầu được hiểu là một hệ thống có các dữ liệu video được lưu trữ trên máy chủ đa phương tiện và được truyền đến người dùng khi họ yêu cầu, cho phép người dùng xem tại bất cứ điểm nào của video, tại bất cứ thời gian nào So sánh với truyền luồng trực tiếp, truyền video theo yêu cầu đưa ra tính năng linh động và tiện lợi đối với người dùng và thực sự thực hiện mục đích “xem bất cứ gì bạn muốn, bất cứ khi nào bạn cần”

Video theo yêu cầu cho phép người dùng chọn các chương trình muốn xem từ một danh sách giới thiệu và có trả phí Khi đó nội dung yêu cầu sẽ được truyền tải

từ hệ thống của nhà cung cấp dịch vụ tới màn hình tivi hoặc máy tính trong thời gian thực Người dùng có toàn quyền thực hiện các thao tác như tua, dừng, quay lại

….với các đoạn video hoặc có thể điều chỉnh màn hình với kích cỡ tùy ý

Kỹ thuật streming video được áp dụng để xây dựng hệ thống cung cấp video theo yêu cầu Streaming video sử dụng cách thức phát lại các đoạn video được lưu trữ trên các máy tính trên mạng tới người dùng đầu cuối muốn xem đoạn video mà không cần tải đoạn video đó về trên máy tính Về bản chất, streaming video là quá trình chia nhỏ file video thành các frame, rồi lần lượt gửi từng frame tới một bộ đệm trên máy tính của người xem và hiển thị nội dung frame đó Và quá trình này tuân thủ chặt chẽ về ràng buộc theo thời gian, nói khác là tuân thủ chặt chẽ theo giao thức RTSP, RTP và RTCP

Streaming video tiết kiệm thời gian cho người dùng bằng cách sử dụng các công nghệ giải nén kết hợp với hiển thị dữ liệu đồng thời trong lúc vẫn tiếp tục tải video về Quá trình này được gọi là kỹ thuật đệm:

- Thay vì gửi dữ liệu 1 lần duy nhất, dữ liệu video streaming sẽ được chia thành từng gói nhỏ, sau đó liên tục truyền những phần được chia ra

- Ban đầu bên nhận sẽ lấy về một phần chia nhỏ của dữ liệu video và hiển thị những phần video đã nhận được, đồng thời trong lúc hiển thị các gói dữ liệu còn lại

sẽ lần lượt được lấy về để kịp cho việc hiển thị tiếp theo

Trang 26

23

Cùng với sự phát triển của công nghệ, các hệ thống cung cấp video theo yêu cầu cũng ngày càng phục vụ người dùng tốt hơn, có nhiều tính năng, chương trình phong phú cho người dùng lựa chọn.Vì thế, dịch vụ này ngày càng thu hút được lượng khách hàng đông đảo Một số nhà cung cấp dịch vụ video theo yêu cầu có thể

kể đến như IPTV, My Tivi …

3.2 Thành phần hệ thống video theo yêu cầu

Một hệ thống cung cấp video theo yêu cầu gồm những thành phần cơ bản sau: 3.2.1 Network Communication

Mạng và băng thông là vấn đề quan trọng cần được quan tâm khi xây dựng một hệ thống cung cấp video theo yêu cầu Vì dung lượng của các video là lớn hơn nhiều so các loại tập tin khác và để phân phối video trên mạng, chúng chiếm một lượng lớn băng thông

Để xây dựng một hệ thống cung cấp video theo yêu cầu đảm bảo chất lượng tốt, thì sự hỗ trợ của mạng là rất quan trọng Khi có 1 đường truyền mạng tốt có thể giúp hệ thống giảm trễ khi truyền tải và giảm tỷ lệ mất gói tin đi

Để phân phối nội dung video theo yêu cầu thì kỹ thuật Unicast được áp dụng Unicast làm việc theo cơ chế: máy chủ streaming truyền dòng riêng cho từng người dùng, địa chỉ IP được đóng dấu trên mỗi gói Điều này cho phép tương tác nhiều hơn cho người sử dụng nhưng đòi hỏi công suất rất lớn từ máy chủ stream vì có rất nhiều dòng phải phân phối

3.2.2 Client

Khách hàng sử dụng nội dung truyền thông trong hệ thống Video theo yêu cầu

có thể bao gồm những khách hàng sở hữu một máy tính thông thường hoặc một Top-Box dễ dàng hơn để kết nối với Tivi

Set-Có nhiều phần mềm được hỗ trợ để xem video, phổ biến như Windows Media Player, Real One Player và Apple QuickTime, VLC Player

3.2.3 Máy chủ streaming

Máy chủ streaming đóng một vai trò quan trọng trong việc cung cấp các dịch

vụ trực tuyến Để cung cấp các dịch vụ trực tuyến chất lượng, các máy chủ

Trang 27

24

streaming được yêu cầu phải xử lý dữ liệu video với sự ràng buộc về thời gian, hạn chế thời gian trễ và hỗ trợ hoạt động kiểm soát tương tác như tạm dừng, tua, tiếp tục, nhanh chóng chuyển tiếp và nhanh chóng quay lại Một máy chủ streaming thường bao gồm ba hệ thống con: một hệ thống kết nối giao tiếp, một hệ điều hành,

và một hệ thống lưu trữ

[9] Một số chuẩn Video Streaming Server: QuickTime Streaming Server, Real Streaming Server, Windows Streaming Server

QuickTime Streaming Server:

- Được phát triển bởi Apple, có thể chạy trên nhiều nền hệ thống (Macintosh, Unix và Windows)

- Phần mềm chạy trên Server là phần mềm mã nguồn mở - Darwin Streaming Server

- Giao thức dùng để streaming là RTSP

- Các định dạng video dùng để streaming: MOV, AVI

- Sử dụng các chuẩn nén: H.264, MPEG-4 Part 2 và 3GP

- Sử dụng QuickTime Player để hiển thị phía người dùng

Real Streaming Server:

- Được phát triển bởi RealNetworks, có thể chạy trên nhiều nền hệ thống (Macintosh, Unix và Windows)

- Phần mềm chạy trên Server: RealSystem Server, Helix Server

- Giao thức dùng để streaming là RTSP và HTTP

- Sử dụng các chuẩn nén: 3GP, H.264, H.263, AAC, Flash codecs…

- Các định dạng video dùng để streaming: mp4, mov, flv, rm…

- Sử dụng RealPlayer để hiển thị phía người dùng

Windows Streaming Server:

- Được phát triển bởi Microsoft, chỉ chạy trên nền Windows

- Phần mềm chạy trên Server là Windows Media Services: dịch vụ được tích hợp trong HĐH Windows

- Giao thức dùng để streaming là MMS, RTSP và HTTP

Trang 28

25

- Các định dạng video dùng để streaming: ASF, WMV

- Sử dụng các chuẩn nén: Microsoft MPEG-4 part 2

- Sử dụng Windows Media Player để hiển thị phía người dùng

- Một số Video Streaming Server khác: VideoLAN streaming, Adobe Flash Media Streaming…

3.2.4 Giao thức sử dụng trong hệ thống VoD ở mô hình Client-Server

Giao thức được thiết kế và chuẩn hóa cho truyền thông giữa máy khách và máy chủ streaming Giao thức có thể được chia làm 3 loại: Giao thức tầng mạng như Internet Protocol (IP), giao thức tầng giao vận như Use Datagram Protocol (UDP) và giao thức điều khiển phiên như Real Time Streaming Protocol (RTSP) [8] RTSP là một giao thức điều khiển trên mạng được thiết kế để sử dụng giao tiếp giữa máy Client và máy streaming Server Giao thức này được sử dụng để thiết lập và điều khiển phiên giao dịch giữa các máy tính

RTSP sử dụng TCP là giao thức để duy trì một kết nối đầu cuối tới đầu cuối và các thông điệp điểu khiển của RTSP được gửi bởi máy Client tới máy Server Nó cũng thực hiện điều khiển lại các đáp trả từ máy Server tới máy Client

Các lệnh cơ bản trong giao thức RTSP:

Option Dùng để yêu cầu thiết lập phiên

Describe Dùng để yêu cầu gửi 1 bản tin mô tả chi tiết phiên giao dịch

Setup Dùng để yêu cầu cấp phát tài nguyên

Play Dùng để yêu cầu trình chiếu video

Pause Dùng để yêu cầu tạm dừng trình chiếu video

Teardown Dùng để yêu cầu kết thúc phiên

Bảng 3.1 Các lệnh trong giao thức RTSP

Ngày đăng: 25/07/2017, 21:35

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w