Tải bản đầy đủ (.pptx) (61 trang)

bài thuyết trình PEER TO PEER SYSTEM

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (4.54 MB, 61 trang )

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
KHOA KỸ THUẬT MÁY TÍNH

PEER TO PEER SYSTEM
MÔN:
XỬ LÝ SONG SONG VÀ HỆ THỐNG PHÂN TÁN

SVTH:
HỒNG QUỐC MINH - 08520230
TRẦN HOÀNG LUÂN – 08520221
GVGD:
THIỀU XUÂN KHÁNH


Nội dung
1.

Giới thiệu

2.

Napster

3.

Peer-to-peer middleware

4.

Routing overlays


5.

Overlay case studies: Pastry, Tapestry

6.

Application case studies: Squirel, OceanStore, Ivy


1. Giới thiệu


Peer to peer system (p2p) là gì?
- Dùng để chỉ những hệ thống phân tán
mà không có máy tính điều khiển trung
tâm.
- Tất

cả các máy tính tham gia (node,
peer) đều có chức năng giống nhau.

- Một

node có chức năng vừa là client
vừa là server của các node khác.


Peer to peer system là gì?



Các ứng dụng


Phân loại


Unstructure P2P
- Nơi

lưu giữ file không liên quan đến overlay
topology (cấu trúc hình học của mạng).

- Kỹ

thuật tìm kiếm:

- Đơn giản (chủ yếu):
- flooding với các giải thuật ưu tiên theo chiều rộng (breadth-first)
hoặc chiều sâu (depth-first).

- Phức tạp:
- bước nhảy ngẫu nhiên (random walk),
- chỉ số routing (routing indices)

- Phù

hợp với hệ thống có các node vào ra
thường xuyên tùy ý.



Unstructure P2P

Thế hệ thứ nhất


Unstructure P2P

Thế hệ thứ hai
Mạng ứng dụng: Gnutela 0.6, Kazaa, Skype…


Structure P2P
- Cung

cấp ánh xạ giữa nội dung (id của
file) với vị trí của node (địa chỉ của
node).

- Khắc

phục nhược điểm tìm kiế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 (DHTDistributed Hash Table)


Structure P2P
- 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ể


- 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.

- Mạng

ứng dụng:

- Pastry, Tapestry, CAN, Chord, Kademlia.


Cơ chế của DHT


Các đặc trưng của P2P system


Đảm bảo mỗi user đều có thể đóng góp tài nguyên cho
hệ thống.



Tất cả các node trong hệ thống có chức năng và trách
nhiệm như nhau.



Hoạt động không phụ thuộc vào hệ thống quản lý trung

tâm.



Có thể giới hạn mức độ ẩn danh đối với nhà cung cấp và
người sử dụng



Cho phép lựa chọn thuật toán về vị trí của dữ liệu trên
nhiều máy chủ và sau đó truy cập vào nó được cân bằng
và sẵn có mà không phải thêm chi phí nào.


Các đặc trưng của P2P system


Ưu điểm:

- Không cần server riêng, các client chia sẻ tài nguyên, khi
mạng càng mở rộng thì khả năng hoạt động càng tốt.
- Rẻ.
- Dễ cài đặt và bảo trì
- Thuận lợi cho việc chia sẻ file, máy in, CDROM…



Nhược điểm:
- Chậm
- Không tốt cho các ứng dụng CSDL.

- Kém tin cậy.


NAPSTER


Là mạng P2P có quy mô lớn dầu tiên
trên thế giới



Thành lập năm 1999



Chia sẻ nhạc qua mạng internet



Các file nhạc được tạo và chia sẻ bởi cá
nhân, thường là copy từ CD.


Napster: chia sẻ file ngang hàng
với chỉ mục trung tâm, bản sao


P2p middleware
- Cung


cấp cơ chế giúp client truy cập tài
nguyên nhanh và độc lập vị trí của
chúng .

- Các

nodes cần xác định vị trí và truy
xuất bất kỳ tài nguyên sẵn có nào mặc
dù tài nguyên đó được phân bố rộng
khắp và liên tục được thêm mới hoặc
xóa bỏ.


P2P MIDLEWARE


Các yêu cầu chức năng:

- Đơn

giản hóa việc xây dựng dịch vụ là thực
hiện trên nhiều host được phân bố rộng khắp.

- Khả

năng thêm mới và xóa bỏ tài nguyên cũng
như thêm host đến dịch vụ và xóa chúng.

- Tương


tự middleware, p2p middleware cung
cấp giao diện người lập trình độc lập với loại
tài nguyên phân bố mà chương trình thao tác.


P2P midleware


Các yêu cầu phi chức năng:

- Global

Scalability

- Load

Balancing

- Local

Optimization

- Accommodating
- Security

to high dynamic host availability

of data

- Anonymity,


censorship

deniability, and resistance to


Routing overlay


Là thuật toán phân bố của p2p midleware
chịu trách nhiệm định vị node và đối tượng.



Một node có thể truy cập tài nguyên bằng
cách định hướng yêu cầu qua một chuỗi
các node.



Một yêu cầu được định hướng đến node
gần nhất có chứa bản sao của tài nguyên
yêu cầu.


Routing overlay


Global User IDs (GUID) định danh node
và object.




GUID thường được lưu dưới dạng số
128 bits, hiển thị bằng số hexa 32
◦ Ví dụ: 21EC2020-3AEA-1069-A2DD08002B30309D



Được tính toán bằng mã băm secure
hash: SHA-1…


Figure 10.1: Distinctions between IP and
overlay routing for peer-to-peer applications
S c ale

Lo ad balanc
ing

Ne two rk dy nam ic s
(additio n/de le tio n o f
o bje c ts/no
de s)
Fault to le ranc e

Targe t ide ntific atio
n
S e c urity andanony m ity


IP

A pplic atio -nle v e l ro uting o vlay
er

IPv4 is limite d to 232 a ddre ssa ble
no de s.The
IPv6 na me spa c e is muc h mo
gere
ne rous
(2128), but a ddre sse sin bo th ve rsions a re
hie ra rc hic a lly struc ture dnda muc ho f the spac e
is pre-a llo c a te d a c c o ng
rdito a dministra tive
re quire me nts.
Lo a ds o n ro ute rs a re de te rmin
ed by ne twork
to po lo gyand a ssoc ia te dtra fficpa tte rns.

Pe e -rto-pe e r syste ms c a n a ddremo
ssre o bje c ts.
The G UID na me spa c e is ve ry laarge
nd fla t
(>2128), a llo wing it to be muc h mofully
re
o c c upied.

O bje c t lo c a tio ns c a n be
ndo
ramiz e dand henc e

tra ffic pa tte rns a re divo rc e d fro m the ne two rk
to po lo gy.
IP ro utingta ble s a re upda te d ancsyhrono uslyon Ro uting ta ble s c a n bepda
u te dsync hronously o r
a be st-e ffo rts ba sis with time c o nsta ntsthe
o n a sync hro nously with fra c tio nso f a se c o nd
o rde r o f 1 ho ur.
de la ys.
Re dunda nc yis de signe d into the IP ne two rkby Ro ute s a nd o bje c t reenc
fe r e sc a n be re plic a te d
its ma na ge rs, e nsuring to lece
raonf a single
n-fo ld, e nsuring to le ra
ceno f n fa ilure s ono
f de s
ro ute r o r ne two rk nne
c o c tivityfa ilure .n-fo ld o r c o nn
ec tio ns.
re plic a tio n is c o stly.
Ea c h IP a ddre ss ma ps to e xa c tly o ne ta rgeMe
t ssa ge s c a n be roedutto the ne a re stre plic ao f
no de .
a ta rge t o bje c t.
Addre ssing is o nly sere
c uwhe n a ll no de sa re Se c urity c a n be a c hie
edve ven in e nviro nments
truste d. Ano nymity fo r the o wne rsa ddr
o fesse s with limite d trust. A limite d de gre eo f
is no t a c hie va ble .
a nonymity c a nbe provide d.


Instructor’s Guide for Coulouris, Dollimore, Kindberg and Blair, Distributed Systems: Concepts and Design Edn. 5
© Pearson Education 2012


Figure 10.3: Distribution of information in a routing overlay

AÕs routing knowledge DÕs routing knowledge

C

A
D

B
Object:
Node:

BÕs routing knowledge

CÕs routing knowledge

Instructor’s Guide for Coulouris, Dollimore, Kindberg and Blair, Distributed Systems: Concepts and Design Edn. 5
© Pearson Education 2012


Basic programming interface for a distributed hash table (DHT) as
implemented by the PAST API over Pastry:




Put(GUID, data)
◦ Publish an object with GUID. The data is stored in all the nodes
responsible for a replica.



Remove(GUID)
◦ Deletes all references to GUID and the associated data.



Value = get(GUID)
◦ The data associated with GUID is retrieved from one of the nodes
responsible it.



The DHT layer take responsibility for choosing a location
for data item, storing it (with replicas to ensure availability)
and providing access to it via get() operation.


×