1. Trang chủ
  2. » Luận Văn - Báo Cáo

Nghiên ứu ứng dụng mô hình p2p vào á ứng dụng lient server

48 2 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

Tiêu đề Nghiên Cứu Ứng Dụng Mô Hình P2P Vào Các Ứng Dụng Client Server
Tác giả Dương Hữu Tùng
Người hướng dẫn PGS.TS Hà Quốc Trung
Trường học Trường Đại Học Bách Khoa Hà Nội
Chuyên ngành Khoa Học Kỹ Thuật Máy Tính Và Truyền Thông
Thể loại Luận Văn Thạc Sỹ
Năm xuất bản 2014
Thành phố Hà Nội
Định dạng
Số trang 48
Dung lượng 1,06 MB

Nội dung

Tơi xin cam đoan tồn bộ nội dung được trình bày trong bản luận văn “Nghiên cứu ứng dụng mô hình P2P vào các ứng dụng client server” này là kết quả tìm hiểu và nghiên cứu của riêng tôi dư

Trang 1

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

- DƯƠNG HỮU TÙNG

NGHIÊN CỨU ỨNG DỤNG MÔ HÌNH P2P VÀO CÁC ỨNG DỤNG

CLIENT SERVER

LUẬN VĂN THẠC SỸ KHOA HỌC

KỸ THUẬT MÁY TÍNH VÀ TRUYỀN THÔNG

NGƯỜI HƯỚNG DẪN KHOA HỌC PGS.TS HÀ QUỐC TRUNG

Hà Nội – 2014

Trang 2

LỜI CAM ĐOAN

Tôi là:Dương Hữu Tùng, học viên cao học lớp 11BMTTT.KH khóa 2011 -

2013 Thầy giáo hướng dẫn là PGS.TS Hà Quốc Trung

Tôi xin cam đoan toàn bộ nội dung được trình bày trong bản luận văn

“Nghiên cứu ứng dụng mô hình P2P vào các ứng dụng client server” này là kết

quả tìm hiểu và nghiên cứu của riêng tôi dưới sự hướng dẫn của PGS.TS Hà Quốc

Trung Các kết quả và dữ liệu được nêu trong luận văn là hoàn toàn trung thực và

rõ ràng Mọi thông tin trích dẫn đều được tuân theo luật sở hữu trí tuệ, liệt kê rõ ràng các tài liệu tham khảo Tôi xin chịu hoàn toàn trách nhiệm với những nội dung được viết trong luận văn này

Hà nội, ngày tháng 4 năm 2014

Trang 3

LỜI CẢM ƠN

Tôi xin gửi lời cám ơn sâu sắc tới PGS.TS Hà Quốc Trung, người đã tận tình hướng dẫn để tôi có thể hoàn thành luận văn này

Tôi cũng xin gửi lời cám ơn chân thành tới quý thày cô viện Công nghệ thông

tin và Truyền thông, iện Đào tạo sau đại học đã truyền dạy những kiến thức quý V

báu trong khoá học này

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

Hà Nội, ngày 4 năm

Học viên

Dương Hữu Tùng

Trang 4

MỤC LỤC

DANH M C HÌNH V 6Ụ ẼCHƯƠNG 1 T NG QUAN 9ỔCHƯƠNG 2 CƠ SỞ LÝ THUY T 12Ế2.1 Mô hình client/server 122.1.1 Khái ni m 12ệ2.1.2 Các ki n trúc Client/Server 15ế2.2 Mô hình peer to peer 172.2.1 Khái ni m 17ệ2.2.2 Phân loại mạng ngang hàng 192.3 So sánh mô hình P2P v i mô hình Client/Server 21ớ2.4 Vấn đề ần giả c i quy t 22ế2.5 Định hương g ải i pháp 242.5.1 Mô hình Local Proxy 242.5.2 Mô hình share cache model 25

CHƯƠNG 3 THI T K NG D NG VIDEO STREAMING S D NG Ế Ế Ứ Ụ Ử Ụ

LOCAL PROXY 283.1 Gi i thi u bài toán 28ớ ệ

Trang 5

3.2.1 Ki n trúc c a server 29ế ủ 3.2.2 Ki n trúc c a client 30ế ủ 3.3 Mô t video streaming s d ng P2P 31ả ử ụ

3.4 Chức năng hệthống video streaming 32

3.5 Thiết kế chi tiết hệ thống video streaming 34

3.5.1 Đăng ký người dùng 34

3.5.2 Đăng nhập 35

3.5.3 Danh sách các đoạn video đang có 37

3.5.4 G i video 38ử 3.5.5 Hi n th video 40ể ị 3.5.6 Thêm một đoạn video 41

3.5.7 Đăng xuất 42

3.6 Cài đặt, th nghiử ệm và đánh giá 43

K T LU N 46Ế Ậ TÀI LIỆU THAM KHẢO 47

Trang 6

DANH MỤ C HÌNH V Ẽ

Hình 2.1 Mô hình client server 13

Hình 2.2 Quá trình gửi mộ ảt b n tin c a mô hình client server 14ủ Hình 2.3 Kiến trúc client server 2 tầng 16

Hình 2.4 Kiến trúc client server 3 tầng 16

Hình 2.5 Mô hình m ng ngang hàng 17ạ Hình 2.6 Phân lo i m ng ngang hàng 19ạ ạ Hình 2.7 Mô hình local proxy 24

Hình 2.8 Mô hình share cache model 25

Hình 3.1 Mô hình m t client và m t server 29ộ ộ Hình 3.2 Mô hình ki n trúc server-client 30ế Hình 3.3 Đăng ký người dùng 34

Hình 3.4 Quy trình đăng nhập 36

Hình 3.5 Qui trình gửi video 38

Hình 3.6 Quy trình hi n th ể ị đoạn video 40

Hình 3.7: Quy trình thêm đoạn video 42

Trang 7

DANH M C B NG Ụ Ả

Bảng 3.1 Quy trình đăng kí người dùng 35

Bảng 3.2 Quy trình đăng nhập 37

B ng 3.3 Quy trình g i video 39ả ử

B ng 3.4 Quy trình hi n th mả ể ị ột đoạn video 41

B ng 3.5 Quy trình thêm m t video 42ả ộ

Trang 8

B NG CH VIẢ Ữ ẾT TẮT

Trang 9

CHƯƠNG 1 T NG QUAN Ổ

Các ứng dụng dựa trên nền tảng client server trên mạng ngày càng phổ ến Tuy - binhiên trong m t sộ ố ứng d ng c n thao tác v i dụ ầ ớ ữ ệ li u lớn hay đòi hỏi nhi u tính ềtoán, xử lí ph c tạp như streaming audio, video, thì mô hình client-ứ server gặp nhiều

bất cập, đặc biệt là khi số lượng người dùng đồng thời tăng, biểu hiện dưới d ng ạnhư quá tải máy ch , tr tín hi u, vi c xem m t video trên m ng gủ ễ ệ ệ ộ ạ ần như là điều không th Ngày nay, cùng vể ới sự bùng nổ ủ c a Internet, các ứng dụng đa phương

tiện trong đó có video streaming đã trở thành nhu cầu không thể thiếu của nhiều cư dân m ng Theo th ng kê, riêng t i Mạ ố ạ ỹ đã có khoảng 33,5 tỉ video được xem trong tháng 12-2012 (nguồn comScore) Con số trên đủ cho ta thấy được sự ớ l n mạnh không n ng cgừ ủa các ứng d ng video streaming Video là mụ ột loạ ữ ệu đa i d liphương tiện quan tr ng ph c v cho truy n thông ho c cho nhu c u gi i trí c a con ọ ụ ụ ề ặ ầ ả ủngười trong nhi u th p niên Trong th i k ề ậ ờ ỳ đầu video được x lý và truyử ền dưới

dạng tín hiệu tương tự (analog) Với sự phát triển không ngừng của mạch điện tử và máy tính dẫn đến số hóa video và m ra m t cuở ộ ộc cách mạng v nén và truyề ền thông video S phát tri n và phự ể ổ bi n củế a Internet giữa những năm 90 đã định hướng truy n thông video qua m ng chuy n m ch gói best effort Video qua ề ạ ể ạ –

mạng Internet gặp phải rất nhiều yếu tố ất lợi về băng thông, độ ễ và mất gói tin, b tr cùng với một số ấn đề như làm thế nào để v chia s tài nguyên mẽ ạng giữa các lu ng ồhay làm th nào có thế ể triển khai hi u quệ ả phương thức truyền thông m t – nhi u ộ ề

T ừ đó đã có rất nhiều giải pháp được nghiên cứu và phát triển nhằm khắc phục

nh ng vữ ấn đề này

Video Streaming được định nghĩa là một “dòng chảy” video, nghĩa là dữ ệ li u video được truy n liên t c t m t nguề ụ ừ ộ ồn đến một đích nào đó thông qua Internet Video Streaming thường được s dử ụng trong lĩnh vực gi i trí ho c d y hả ặ ạ ọc, dùng để lưu

tr ữ các tập tin Video hoặc các bài học, cung cấp cho người dùng các tiện ích như tìm ki m, li t kê và khế ệ ả năng hiển thị hoặc hi n thể ị ạ l i các dữ ệ li u Video theo yêu

Trang 10

đượ ả ềc t i v (download) toàn b , vì vộ ậy đố ới v i các t p tin Video chậ ất lượng cao có dung lượng l n thì công vi c này s tiêu t n r t nhi u th i gian ớ ệ ẽ ố ấ ề ờ

Video Streaming 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ị ữ liệu đồ d 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 (buffering):

+ Thay vì đượ ửc g i m t 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 ệ ể ị ế

Video Streaming được th hiể ện dưới hai d ng: ạ

+ Video theo yêu c u (on demand): là 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 có yêu c u, ng i dùng có toàn ầ ườquyền để ể hi n th ị cũng như thực hi n các thao tác (tua, d ng, quay l i…) vệ ừ ạ ới các đoạn d li u này ữ ệ

+ Video thời gian thực (live event): là các dữ ệu Video được biế li n đổi trực tiếp từcác nguồn cung c p d li u theo th i gian th c (máy camera, microphone thi t b ấ ữ ệ ờ ự ế ịphát d li u Video…) ữ ệ

Việc đảm bảo chất lượng dịch vụ ủa các ứng dụng như vậy là bài toán vô cùng cấp cthiết Chính vì vậy tôi lựa chọn đề tài “Nghiên cứ ứng dụng mô hình P2P vào các u

ng d ng client server” Đề tài này đề xu t nghiên c u ng d ng, cách ti p c n s ấ ứ ứ ụ ế ậ ử

dụng đồng thời hai giao thức peer- to- peer và client server thông qua local proxy – cho ng d ng streaming video.ứ ụ

Luận văn này được chia các phần như sau:

Chương 1: T ng quan ổ

Chương : Cơ sở2 lý thuy t ế

Trang 11

Trong chương này trình bày về ổ t ng quan v mô hình client server, mô hình peer to ềpeer, vấn đề ầ c n giải quyế định hướt, nggiải pháp,làm cơ sở để thực hiện chương

ti p theo ế

Chương 3: Thi t k ng d ng video streaming s d ng local proxy ế ế ứ ụ ử ụ

Qua nghiên cứu ưu n ợc điểhư m c a các mô hình client server, mô hình peer to peer ủcùng v i giớ ải pháp đưa ra, luận văn này đề xuất sử ụ d ng mô hình local proxy - ng ứ

dụng ưu điểm của 2 mô hình client server và peer to peer Để ực hiện luận văn thđưa ra giải pháp để tri n khái ng d ng video streaming s d ng mô hình local ể ứ ụ ử ụproxy

Mặc dù đã cố ắng hết sức và sự giúp đỡ ận tình của Thầy giáo hướng dẫ g t n, song trình độ còn h n ch , ph m vi c a đ tài r ng nên không th tránh kh i nh ng thi u ạ ế ạ ủ ề ộ ể ỏ ữ ếsót Em r t mong sấ ự ch dỉ ẫn và đóng góp của các Thầy cô để ận văn đượ lu c hoàn thiện hơn

Trang 12

CHƯƠNG 2 CƠ S Ở LÝ THUY T Ế

Trong chương này, tôi xin trình bày các mô hình client server, mô hình peer to peer, các vấn đề ầ c n gi i quyả ết,đưa ra mô hình gi i ả pháp để lưa chọn cho chương tiếp theo

2.1 Mô hình client/server

2.1.1 Khái ni m ệ

Mô hình client/server rất ph biổ ến và được chấp nh n r ng rãi trong các hậ ộ ệ th ng ốphân tán Trong mô hình này có m t t p ti n trìnhộ ậ ế , mỗ ến trình đóng vai trò một i titrình qu n lý tài nguyên cho m t tả ộ ập các tài nguyên cho trước và mộ ật t p hợp các

tiến trình client trong đó mỗi tiến trình thực hiện một tác vụ c định cần truy xuất xá

t i tài nguyên phớ ần cứng ho c phặ ần mềm dùng chung B n thân các trình qu n lý tài ả ảnguyên cần phải truy xu t tấ ới các tài nguyên dùng chung được quản lý bởi mộ ến t titrình khác, vì v y mậ ột số ế ti n trình v a là ti n trình client vừ ế ừa là tiến trình server Các ti n trình phát ra các yêu c u tế ầ ới các server bất kỳ khi nào chúng cần truy xuất

tới một trong các tài nguyên của các server Nếu yêu cầu là đúng đắn thì server sẽ

thực hiện hành động được yêu cầu và gửi một đáp ứng trả ời tới tiến trình client l[2]

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 trên 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 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; 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ột tiến trình server có th s d ng dể ử ụ ịch vụ ủa mộ c t server khác

Trang 13

Hình 2.1Mô hình client server

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 bao g m: ữ ệ ồ

1 Truyền một yêu cầu từ tiến trình client tới tiến trình server

2 Yêu cầu được server xử lý

3 Truyền đáp ứng cho client

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ụ ể ữa client và server Tiến trình server phải nhận thức được thông th giđ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 (b phong tị ỏa) và buộc ti n trình client ế ở ạ tr ng thái chờ cho t i khi nó nhớ ận được đáp ứng do server g i v ử ề ở bước ba

Mô hình client/server thường được cài đặ ựt d a trên các thao tác cơ b n là g i (send) ả ử

và nh n (receive) ậ

Trang 14

Hình 2.2 Quá trình gửi một bản tin c a mô hình client server

Quá trình giao ti p client và server có thế ể diễn ra theo m t t rong hai chộ ế độ: bị phong t a (blocked) và không b phong t a (non-blocked) ỏ ị ỏ

Chế độ không bị phong tỏa (non- blocked)

Tiếntrìnhđangphongtỏa

Tiếntrìnhđangxửlý Reply

Request

Provide service Wait

Server Client

Trang 15

Trong chế độ này, khi tiến trình client hay server phát ra lệnh gửi dữ liệu thực sự, việc thực thi của tiến trình vẫn được tiến hành mà không quan tâm đến việc có tiến trình nào phát ra lệnh nhận dữ liệu đó hay không

Tương tự cho trường hợp ậ dữliệu, khi tiến trình phát ra lệnh nhận dữ liệu, nó sẽ nh n nhận dữ liệu hiện có, việc thực thi của tiến trình vẫn được tiến hành mà không quan tâm đến việc có tiến trình nào phát ra lệnh gửi dữ liệu tiếp theo hay không

2.1.2 Các ki n trúc Client/Server ế

2.1.2.1 Client/Server hai t ầng

Kiến trúc client/server đơn giản nh t là ki n trúc hai t ng Trong th c t h u h t các ấ ế ầ ự ế ầ ế

kiến trúc client/server là kiến trúc hai tầng Mộ ứng dụng hai tầng cung cấp nhiều t

trạm làm việc với một tầng trình diễn thống nhất, tầng này tru ền tin với tầng lưu y

tr d liữ ữ ệu tập trung Tầng trình diễn thông thường là client và tầng lưu trữ ữ ệu d li

là server [9]

Hầu hết các ứng dụng Internet như là email, telnet, ftp thậm chí là cả Web là các

ứng d ng hai t ng Ph n l n các l p trình viên trình ng d ng vi t các ng d ng ụ ầ ầ ớ ậ ứ ụ ế ứ ụclient/server có xu th s d ng ki n trúc này ế ử ụ ế

Trong ứng dụng hai tầng truyền thống, khối lượng công việc xử lý được dành cho phía client trong khi server chỉ đơn giản đóng vai trò như là chương trình kiểm soát luồng vào ra giữa ứng dụng và dữ liệu Kết quả là không chỉ hiệu năng của ứng dụng bị giảm đi do tài nguyên hạn chế của PC, mà khối lượng dữ liệu truyền đi trên mạng cũng tăng theo Khi toàn bộ ứng dụng được xử lý trên một PC, ứng dụng bắt buộc phải yêu cầu nhiều dữ liệu trước khi đưa ra bất kỳ kết quả xử lý nào cho người dùng Nhiều yêu cầu dữ liệu cũng làm giảm hiệu năng của mạng Một vấn đề thường gặp khác đối với ứng dụng hai tầng là vấn đề bảo trì Chỉ cần một thay đổi nhỏ đối với ứng dụng cũng cần phải thay đổi lại toàn bộ ứng dụng client và server

Trang 16

Hình 2.3 Kiến trúc Client Server 2 tầng

2.1.2.2 Client/Server ba tầng

Ta có thể tránh được các vấn đề ủ c a kiến trúc Client/Server hai t ng b ng cách mầ ằ ở

rộng kiến trúc thành ba ầng Một kiến trúc ba tầng có thêm một tầng mới táct h biệt

việc xử lý d li u v trí trung tâm ữ ệ ở ị

Hình 2.4 Kiến trúc Client Server 3 tầng

Theo ki n trúc ba t ng, mế ầ ộ ứt ng dụng được chia thành ba t ng tách bi t nhau vầ ệ ề ặ m t logic Tầng đầu tiên là t ng trình diầ ễn thường bao gồm các giao diện đồ ọ h a Tầng

th ứ hai, còn được gọi là tầng trung gian hay tầng tác nghiệp Tầng thứ ba chứa dữ

liệu cần cho ứng dụng Tầng thứ ba về cơ bản là chương trình thực hiện các lời gọi hàm để tìm ki m d li u c n thi t T ng trình di n nh n d liế ữ ệ ầ ế ầ ễ ậ ữ ệu và định dạng nó để

hiển thị Sự tách biệt giữa chức năng xử lý với giao diện đã tạo nên sự linh hoạt cho

việc thiết kế ứng dụng Nhiều giao diện người dùng được xây dựng và triển khai mà không làm thay đổi logic ng d ng ứ ụ

Trang 17

T ng th ầ ứba chứa dữ ệ ầ li u c n thi t cho ng d ng D li u này có th bao gế ứ ụ ữ ệ ể ồm bất kỳnguồn thông tin nào, bao gồm cơ sở ữ ệu như Oracle, SQL Server d li ho c tài li u ặ ệXML

2.1.2.3 Client/server n- tầng

Ki n trúc n-tế ầng được chia thành các tầng như sau:

- Tầng giao diện người dùng: quản lý tương tác của người dùng với ứng dụng

- Tầng logic trình diễn: ác định cách thức hiển thị giao diện người dùng x

và các yêu cầu của người dùng được quản lý như thế nào

- Tầng logic tác nghiệp: ô hình hóa các quy tắc tác nghiệpm

- Tầng các dịch vụ hạ tầng: ung cấp một chức năng bổ trợ cần thiết cho cứng dụng như các thành phần (truyền thông điệp, hỗ trợ giao tiếp)

2.2 Mô hình Peer to P eer

2.2.1 Khái ni m ệ

Hình 2.5 Mô hình m ng ngang hàng

Trang 18

Một mạng máy tính ngang hàng (Peer – to – Peer hoặc P2P) chủ ếu dựa trên sức ymạnh tính toán và băng thông của các máy tham gia trong mạng hơn là tập trung vào một số lượng nhỏ các máy chủ (server) Mạng P2P được sử ụng điển hình cho d

việc kết nối các nút thông qua những kết nối ad hoc Ad hoc là công nghệ ới nhất ( mtrong công ngh thông tin vô tuy n Công ngh này cho phép các nút m ng truyệ ế ệ ạ ền

trực tiếp với nhau sử ụng bộ thu phát không dây mà không cần bất cứ cơ sở ạ d h

tầng cố định nào Những mạng như vậy có ích cho nhiều mục đích sử ụng Chia ) d

s ẻ file chứa audio, video, data hoặc mọi thứ ở định dạng số, các dữ ệu thời gian li

thực, ví dụ như truyền tải giọng nói, video streaming đều có thể ực hiện với công thngh ệP2P

Một mạng P2P thuần túy sẽ không có khái niệm về khách (clien ) và chủt (server),

mà chỉ có những nút ngang hàng thực hiện cả hai chức năng của máy chủ và máy khách đối v i nh ng nút khác trong m ng Mô hình m ng này khác v i mô hình ớ ữ ạ ạ ớ

mạng khách chủ– (server –client) mà việc giao tiếp thường là với các máy chủtrung tâm M t ví dộ ụ điển hình cho vi c truyệ ền file theo mô hình khách – chủ là giữa một FTP Client và một FTP Server, hai chương trình FTP Client và FTP Server có vai trò r t khác nhau, client kh i t o vi c download/upload file còn server ấ ở ạ ệthì ti p nh n và phế ậ ục vụ các yêu cầu đó

Mục đích quan trọng của mạng ngang hàng là trong mạng tất cả các máy tham gia đều đóng góp tài nguyên bao gồm băng thông, lưu trữ và kh ả năng tính toán Do đó khi càng có nhi u máy tham gia và m ng thì khề ạ ả năng tổng thể ủ c a hệ ố th ng mạng càng lớn Ngược lại, trong mô hình máy khách – chủ ếu số lượ, n ng máy ch là củ ố

định thì khi s ố máy khách tăng lên thì khả năng chuyển d li u t các máy ch cho ữ ệ ừ ủ

m i máy khách s gi m xu ng ỗ ẽ ả ố

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

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

Trang 19

2.2.2 Phân lo ại mạ ng ngang hàng

Mạng ngang hàng P2P được chia làm hai loại chính: mạng ngang hàng thuần túy và

m ng ngang hàng lai ghép ạ

Hình 2.6 Phân loại mạng ngang hàng

2.2.2.1 M ng ngang hàng thu ạ ần túy

Mạng ngang hàng thuần túy được chia làm 2 loại: Mạng ngang hàng có cấu trúc và

m ng ngang hàng không c u trúc ạ ấ

Mạng ngang hàng không cấu trúc: là 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ì các máy m i khi mu n tham gia m ng có th ự ớ ố ạ ể

lấy các liên kết sẵn có có 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ữ ệu trong mạ li ng đồng đẳng không cấu trúc, yêu cầu tìm kiếm sẽ được truyền trên cả ạng để m tìm ra càng nhi u máy chia s càng t t Sề ẻ ố ự ể hi u bi t vế ề ạ m ng của các nút trong ng không c u trúc là r t ít, m i nút chmạ ấ ấ ỗ ỉ ắ n m bắt thông tin về nh ng ữ

Trang 20

toàn thông qua Broadcast Chính vì v y, v i nhậ ớ ững ứng d ng c n có s liên k t chụ ầ ự ế ặt chẽ ữ gi a các nút với nhau như multicast thì mạng ngang hàng không cấu trúc không

ph i là s lả ự ựa chọn tối ưu

Mạng ngang hà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ử ụng hệ ống DHT (Distributed Hash Table d th – 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 i v

một phần dữ ệu chia s trong mạng Với cấu trúc này, khi một máy định tuyến lithông báo, nó chỉ ầ c n áp d g m t giao thụn ộ ức chung để xác định nút c n thông báo ầ

và sau đó liên lạc tr c tiự ếp đến nút mạng đó Bở ậi v y vi c t o cây multicast s di n ệ ạ ẽ ễ

ra r t d dàng và viấ ễ ệc quản l cây cũng có nhiều thu n lậ ợi khi các nút đều được liên

kết chặt chẽ ới nhau Một số ạ v m ng ngang hàng có cấu trúc nổi tiếng bao gồm Chord, CAN, Kademlia, Pastry và Tapestry

2.2.2.2 M ng ngang hàng lai ghép ạ

Trong mô hình m ng ngang hàng lai ghép, t n tạ ồ ại một server trung gian có trách nhiệm điều khiển hoạ ột đ ng của mạng Server này lưu trữ các chỉ ục bao gồm mthông tin v các nút mà nó qu n lý và v trí các c p key value trên m ng Các nút ề ả ị ặ – ạtrong m ng ph i t o liên k t v i server này M t nút muạ ả ạ ế ớ ộ ốn trao đổi thông tin với

một nút khác thì nó sẽ phải liên lạc trực tiếp với server, sau đó server sẽ tìm kiếm trong cơ sở ữ ệ d li u và g i lử ại địa ch ỉ nút đích Quá trình trao đổi thông tin sau đó được di n ra tr c ti p gi a 2 nút Vi c tri n khai truy n tin multicast trên m ng ễ ự ế ữ ệ ể ề ạngang hàng lai ghép g n giầ ống như mô hình proxy base ALM Nhược điể– m chính

của nó vẫ là chi phí cao cho các server trung gian Ứng dụng điển hình cho mô n hình mạng này là Napster

Trang 21

2.3 So sánh mô hình P2P vớ i mô hình Client/Server

- M t m n ngang hàng cho phép ộ ạ g

các node (PCs) óng góp, chia s đ ẻ

ngu n tài nguyên v i nhau Tà ồ ớ i

nguyên riêng r c ẽ ủa các node ( ổ

c ng, CD-ROM má in … Cá ứ , y c

ngu n tài nguyên này có th ồ ể được

truy c p t b t c node nào trong ậ ừ ấ ứ

mạng

- Các node đóng vai trò như ả c

Client (truy v n thông tin) và Server ấ

(cung c p thông tin).ấ

- D u ữ liệ đượ ưu tr mc l ữ ở ột Server trung tâm, t c cao (T c truy c p th ng ố độ ố độ ậ ườlớn h n so v i m ng P2P) ơ ớ ạ

- Khi m t máy client yêu c u l y thông tin ộ ầ ấ

v th i gian nó s phề ờ ẽ ải g i một yêu c u theo ử ầmột tiêu chu n ẩ do server định ra, nếu yêu

c u ầ được ch p nh n thì máy server s tr vấ ậ ẽ ả ềthông tin mà c ent yêli u cầ u

Trang 22

Ưu ,nh c i mc am ng P2P,Client/Server ượ đ ể ủ ạ

+ u m: Ư điể

- Không cần server riêng, các client chia

s ẻ tài nguyên Khi mạng càng được mở

rộng thì khả năng hoạt động của hệ

- S dử ụng được với các ứng dụngchia s CSDL ẻ

- Đáng tin cậy hơn (có server riêng)

Trang 23

rộng đã được đề xuất để tăng hiệu suất và giải quyết vấn đề trên Kỹ thuật cân bằng

t i (load balancing) và k thu t sao chép (replication technique) trong h thả ỹ ậ ệ ống phân tán giúp gi m t i bả ả ằng việc phân ph i t i trên nhi u máy ch Ngoài ra bố ả ề ủ ộ nh m ớ đệcũng là mộ ỹt k thu t sao chép bậ ất đố ứi x ng c a d li u t phía máy ch v phía máy ủ ữ ệ ừ ủ ềkhách hàng client hay được s d ng B nh ử ụ ộ ớ đệm được s d ng ch n l c trong mô ử ụ ọ ọhình proxy, khi proxy được uỷ quyền nh n l nh tậ ệ ừ máy khách hàng đến máy chủ (proxy đóng vai trò trung gian), và thay vì trực ti p l y d li u t máy ch thì proxy ế ấ ữ ệ ừ ủ

có th cung c p dể ấ ữ ệ li u từ ộ ớ đệ b nh m của mình Ngoài ra proxy cũng đồng th i có ờ

th ể được sử ụng theo hướng ngược lại khi nhận uỷ d quyền từ máy chủ Tuy nhiên,

những cách tiếp cận trên vẫn hoàn toàn nằm trong mô hình client server , vì vậy nó không th gi i quy t dể ả ế ứt điểm vấn đề nút c chai cổ ủa máy chủ

-Khi thi t k ng dế ế ứ ụng sử ụ d ng ki n trúc client server, các nhà ế - thiết kế ả ph i xem xét

s ự tương tác giữa số lượng máy khách hàng và máy chủ, và trên thực tế ất nhiều rkhách hàng có th truy cể ập đến máy ch cùng mủ ộ lúc Hơn nữt a việc tập trung dữ

liệu trên hệ ống máy chủ th khiến cho các hệ thống gặp rất nhiều khó khăn trong các

k ỹ thuât: đồng bộ hóa , nhân rộng , an ninh, kiểm soát truy cập Mô hình P2P giải quyết những khó khăn trên bằng cách phân phối khối lượng công việc tính toán trên các máy ngang hàng (peers) Sử ụ d ng mô hình này , sự tương tác của các thành

ph n cầ ủa hệ ống được thay đổ th i hoàn toàn, và vì v y các giao thậ ức và các ứng d ng ụthiết kế khá phức tạp Thay vì thiết kế ột giao thức giữa máy khách và máy chủ, mbây giờ ph i tạo mốả i liên kết và tương tác rất phức tạp trên các máy ngang hàng

Thực chất kiến trúc P2P có khả năng giải quyết vấn đề thông tin liên lạc và tăng

hiệu suất xử lý nhưng hiện tại kiến trúc này không thực sự quan tâm và xử lý đến

vấn đề tương tác giữa các máy ngang hàng Điều này mở ra hướng kết hợp mô hình P2P và mô hình client-server trong đómô hình client server được xây d ng cho viự ệc tương tác giữa các máy, còn mô hinh P2P được s dử ụng cho phương thức lưu trữ, trao đổ ữ ệi d li u, tính toán và các giao ti p khác H th ng s bao g m c thành ph n ế ệ ố ẽ ồ ả ầclient-server và xây dựng các hệ ố th ng ph P2P

Trang 24

Để xây d ng h th ng trên nh ng vự ệ ố ữ ấn đề ồ ạ ần đượ t n t i c c gi i quy t là: ả ế

- S ự tương tác giữa cấu trúc client-server và h ệthống ph ụP2P

- Áp dụng hệ thống với yêu cầu ứng dụng cụ thể[5]

P2P AGENT

LOCAL PROXY LOCAL PROXY

LOCAL PROXY

USER’S HOST

Hình 2.7 Mô hình Local P roxy

- Module client: tương tự như client trong mô hình client-server

Ngày đăng: 26/01/2024, 15:49

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
1. Bin Rong, “Video Streaming over the Internet using Application LayerMulticast”, RMIT University, 2008.” Sách, tạp chí
Tiêu đề: Video Streaming over the Internet using Application Layer Multicast
Tác giả: Bin Rong
Nhà XB: RMIT University
Năm: 2008
2. Dmitri Moltchanov (2012) Client/server and peer -to- peer models: basic concepts Sách, tạp chí
Tiêu đề: Client/server and peer -to- peer models: basic concepts
Tác giả: Dmitri Moltchanov
Năm: 2012
5. L. Abeni, C. Kiraly, R. Lo Cigno, “Achiving performance and robustness in P2P streaming systems”, University of Trento, Italy, Tech. Rep. TR-DISI- 09-041, 2009 Sách, tạp chí
Tiêu đề: Achiving performance and robustness in P2P streaming systems
6. Ha Quoc Trung (2012) “New approach to develop the messenger application: from client server design to p2p implementation”, ACSIT-2012 Sách, tạp chí
Tiêu đề: New approach to develop the messenger application: from client server design to p2p implementation
Tác giả: Ha Quoc Trung
Nhà XB: ACSIT-2012
Năm: 2012
7. Ion Stoica, Robert Morris, David Karger, M. Frans Kaashoek, Hari Balakrishnan. “Chord: A scalable peer -to- peer lookup protocol for internet applications” Sách, tạp chí
Tiêu đề: Chord: A scalable peer -to- peer lookup protocol for internet applications
Tác giả: Ion Stoica, Robert Morris, David Karger, M. Frans Kaashoek, Hari Balakrishnan
8. Nguyen Quang Thu: Study of distributed replication: design a messenger application using local proxy model. Master’s thesis, Hanoi University of Science and Technology, 4 2013 Khác
9. Lawrence Chung Client- Server Architecture, Computer Science Program, The University of Texas, Dallas Khác
10. Luong Quy Tho, Ha Quoc Trung P2P shared caching model: using P2P to : - improve client-server application performance. SoICT 2013: 222-226 Khác
11. Wenwu Zhu, Member, IEEE, Dapeng Wu, Student Member, IEEE, Yiwei Thomas Hou, Member, IEEE, Ya-Qin Zhang, Fellow, IEEE, Jon M. Peha Khác

HÌNH ẢNH LIÊN QUAN

Hình 2.1 Mô hình client server - Nghiên ứu ứng dụng mô hình p2p vào á ứng dụng lient server
Hình 2.1 Mô hình client server (Trang 13)
Hình 2.2 Quá trình g ửi một bả n tin c a mô hình client server  ủ - Nghiên ứu ứng dụng mô hình p2p vào á ứng dụng lient server
Hình 2.2 Quá trình g ửi một bả n tin c a mô hình client server ủ (Trang 14)
Hình 2.4  Kiến trúc Client Server 3 tầng - Nghiên ứu ứng dụng mô hình p2p vào á ứng dụng lient server
Hình 2.4 Kiến trúc Client Server 3 tầng (Trang 16)
Hình 2.3  Kiến trúc Client Server 2 tầng 2.1.2.2 Client/Server ba tầng - Nghiên ứu ứng dụng mô hình p2p vào á ứng dụng lient server
Hình 2.3 Kiến trúc Client Server 2 tầng 2.1.2.2 Client/Server ba tầng (Trang 16)
Hình 2.5 Mô hình m ng ngang hàng  ạ - Nghiên ứu ứng dụng mô hình p2p vào á ứng dụng lient server
Hình 2.5 Mô hình m ng ngang hàng ạ (Trang 17)
Hình 2.6 Phân lo ại mạ ng ngang hàng - Nghiên ứu ứng dụng mô hình p2p vào á ứng dụng lient server
Hình 2.6 Phân lo ại mạ ng ngang hàng (Trang 19)
Hình 2.7 Mô hình Local P roxy Module client: tương tự như client trong m ô hình client-server - Nghiên ứu ứng dụng mô hình p2p vào á ứng dụng lient server
Hình 2.7 Mô hình Local P roxy Module client: tương tự như client trong m ô hình client-server (Trang 24)
Hình 2.8 Mô hình share cache model  Trong mô hình cache dùng chung, P2P và bộ phận cache được thêm vào hệ thống - Nghiên ứu ứng dụng mô hình p2p vào á ứng dụng lient server
Hình 2.8 Mô hình share cache model Trong mô hình cache dùng chung, P2P và bộ phận cache được thêm vào hệ thống (Trang 25)
Hình 3.1 . Mô  hình m t  ộ client và  m t  ộ server. - Nghiên ứu ứng dụng mô hình p2p vào á ứng dụng lient server
Hình 3.1 Mô hình m t ộ client và m t ộ server (Trang 29)
Hình 3.3: Các  chức năng hệ ố  th ng video streaming - Nghiên ứu ứng dụng mô hình p2p vào á ứng dụng lient server
Hình 3.3 Các chức năng hệ ố th ng video streaming (Trang 32)
Hình 3.3  Đăng ký người dùng - Nghiên ứu ứng dụng mô hình p2p vào á ứng dụng lient server
Hình 3.3 Đăng ký người dùng (Trang 34)
Hình 3.4  Quy trình đăng nhậ p  Quy trình đăng nhập đượ c th c hiự ện như  trong B ng 3.2 sau - Nghiên ứu ứng dụng mô hình p2p vào á ứng dụng lient server
Hình 3.4 Quy trình đăng nhậ p Quy trình đăng nhập đượ c th c hiự ện như trong B ng 3.2 sau (Trang 36)
Hình 3.5 Qui trình g ửi video - Nghiên ứu ứng dụng mô hình p2p vào á ứng dụng lient server
Hình 3.5 Qui trình g ửi video (Trang 38)
Hình 3.6 Quy trình hi n th   ể ị đoạn video - Nghiên ứu ứng dụng mô hình p2p vào á ứng dụng lient server
Hình 3.6 Quy trình hi n th ể ị đoạn video (Trang 40)
Hình 3.7: Quy trình thêm  đoạn video - Nghiên ứu ứng dụng mô hình p2p vào á ứng dụng lient server
Hình 3.7 Quy trình thêm đoạn video (Trang 42)

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

TÀI LIỆU LIÊN QUAN