ánh Giá Vi c S D ng M ng Trung
Gian Ngang Hàng Xây D ng ng
D ng Qu ng Bá Kh Bi n
GV h ng d n: TS. Nguy n i Th
Trình bày: Ph m V n Tuân
Các mục trình bày
Giới thiệu tổng quan về CAN và Pastry
Miêu tả flooding và tree building
Đánh giá hiệu năng hoạt động của flooding và tree
building trên CAN và Pastry
So sánh giữa flooding và tree building, giữa CAN và
Pastry
Kết luận
Giới thiệu
Hai cấu trúc chính của mạng ngang hàng trung gian
Mạng ngang hàng trung gian sử dụng một dạng của
generalized hypercube routing
Mạng ngang hàng trung gian sử dụng nguyên tắc tính toán
khoảng cách để định tuyến qua một Cartesian hyper-space
Vì sao sử dụng mạng ngang hàng trung gian để xây dựng
ứng dụng quảng bá
Hai cách tiếp cận sử dụng mạng ngang hàng trung gian để
thực hiện quảng bá
Flooding
Tree building
Mạng trung gian ngang hàng
Cung cấp khả năng định tuyến có hiệu suất cao trên
một không gian tên
Hai lớp giải thuật chính trong giải thuật định tuyến
ngang hàng là:
Chord, Pastry, Tapestry sử tiếp cận theo cách chia để trị
để định tuyến trong một vòng tròn
CAN định tuyến trong một Cartesian hyper-space bằng
cách chọn một node láng giềng gần hơn tới đích cho mỗi
một bước nhảy định tuyến
Chúng ta lựa chọn CAN và Pastry làm đại diện
cho 2 lớp giải thuật này
Mạng trung gian CAN
CAN = Content Addressable Network
CAN tổ chức các node trong một hypercube d chiều.
Mỗi node sẽ sở hữu một vùng không gian riêng do
đó toàn bộ không gian chung được bảo toàn.
Không gian của một node được chia làm 2 phần,
một nửa dành cho node đó còn một nửa để dành
cho node mới tham gia vào mạng
Một node lưu giữ bảng định tuyến trực tiếp đến các
node láng giềng kề cận với nó
Mạng trung gian CAN (cont)
Một node tham gia vào mạng bằng cách gửi một
join message tới một node bất kỳ trong mạng
Một node thực hiện việc định tuyến bằng cách
chuyển tiếp message tới node láng giềng kề cận với
nó và gần hơn tới đích trong không gian CAN
Với không gian có kích thước là d, chia ra làm n
phần giống nhau thì độ dài trung bình của quãng
đường định tuyến là (d/4)
d
√n
Mạng trung gian CAN (cont)
Các thông số có ảnh hưởng đến hiệu năng định
tuyến
Dimensions: Số chiều (kích thước) của không gian CAN
Network-aware routing: Phát triển một chiến lược định
tuyến mới networ-delay routing (NDR), nó sẽ chọn node
láng giềng với độ trễ mạng nhỏ nhất để chuyển tiếp
message, điều này bắt message phải tiến gần tới đích hơn
sau mỗi một bước nhảy định tuyến
Multiple node per zone: Cho phép có nhiều hơn một
node cùng tồn tại trong một vùng không gian con. CAN sẽ
chuyển phát message tới một node bất kỳ ở trong vùng
Mạng trung gian CAN (cont)
Các thông số… (cont)
Uniform Partioning:Khi một node tham gia vào mạng,
node nắm giữ khóa đích sẽ so sánh kích thước vùng của
nó với kích thước vùng của node láng giềng hơn là ngay
tức khắc chia vùng của nó làm 2 phần. Nếu có bất kỳ một
vùng láng giềng nào đó lớn hơn vùng hiện tại thì join
message sẽ được chuyển tiếp đến vùng láng giềng đó.
Quá trình này lặp lại cho đến khi một vùng có kích thước
lớn nhất được tìm thấy, tại đó vùng sẽ chia làm 2 và node
mới sẽ chiếm một nửa
Mạng trung gian CAN (cont)
Các thông số…(cont)
Landmark-based Placement:
Khảo sát một bộ các well known “landmark hosts”
Mỗi node ước lượng khoảng cách, thời gian đi đến các
landmark mechines và sắp xếp chúng theo thư tự từ gần
nhất tới xa nhất
Các node có thứ tự của các landmark giống nhau sẽ được
nhóm lại trong cùng một nhóm
Thay vì lựa chọn một địa chỉ CAN bất kỳ, không gian CAN sẽ
được chia nhỏ thành n phần bằng nhau (n là số nhóm) và tại
thời điểm gia nhập địa chỉ CAN sẽ được lựa chọn bất kỳ
trong phạm vi nhóm. Điều này giúp các node có cùng thứ tự
của landmark trở nên gần hơn với các node khác trong
không gian CAN
Mạng trung gian Pastry
Pastry sử dụng 1 không gian tên 128 bit, nó gán cho
mỗi node một nodeId được lựa chọn ngẫu nhiện từ
không gian tên đó.
Pastry thực hiện công việc định tuyến bằng cách
chuyển tiếp message đến node có nodeId về mặt số
học là gần nhất với giá trị khóa đích.
Số lần trung chuyển message là: log2
b
N: N là số
các node có trong lớp trung gian, b là 1 thông số
cấu hình có giá trị điển hình là 4)
Mạng trung gian Pastry (cont)
Để phục vụ cho việc định tuyến, nodeid và khóa
đích dược dịch thành một chuỗi các con số trong hệ
số cơ số 2
b
Mỗi node có một bảng định tuyến được tổ chức
thành 128/b cấp độ với 2
b
đầu vào cho mỗi cấp độ.
Đầu vào trong cột m tại cấp độ n của bảng định
tuyến của một node p trỏ tới một node có nodeid
chia sẻ n chữ số đầu tiên với nodeid của p và có
chữ số thứ n+1 là m
Ta có bộ ℓ các node là số các node láng giềng của
node hiện tại, thì trong đó có ℓ/2 node có nodeid lớn
hơn và ℓ/2 có nodeid nhỏ hơn
Mạng trung gian Pastry (cont)
Trung bình chỉ có log2
b
N cấp độ trong một bảng định
tuyến, 2
b
– 1 đầu vào cho mỗi cấp độ. Do đó trung
bình mỗi node chỉ duy trì (2
b
– 1)log2
b
N + 2 ℓ (ℓ là
một thông số cấu hình nhận giá trị 16)
Tại mỗi bước định tuyến, một node thông thường sẽ
chuyển tiếp message tới một node có nodeid chia
sẻ với khóa đích ít nhất là 1 chữ số đầu tiên (hoặc b
chữ số đầu tiên) hơn là ngược lại
Mạng trung gian Pastry (cont)
Pastry khai thác vị trí mạng để làm giảm độ trễ định
tuyến
Pastry giới hạn độ trễ của các node tới một giá trị
nhỏ chấp nhận được khi xây dựng bảng định tuyến
Với mỗi một đầu vào trong bảng định tuyến, Pastry
chọn một trong số các node gần nhất trong topo
mạng có nodeid thỏa mãn ràng buộc tại đầu vào
cho đầu vào đó
Ràng buộc tại đầu vào trong bảng định tuyến tăng
lên khi chuyển từ cấp độ cao xuống cấp độ thấp
hơn.
Ứng dụng quảng bá dựa trên lớp trung
gian
Có 2 cách để thực thi ứng dụng quảng bá trên các
lớp trung gian ngang hàng: Flooding & Tree building
Flooding:
Đẩy thông tin đã lưu giữ tới lớp định tuyến trung gian để
thực hiện chức năng quảng bá hiệu quả, rẻ nếu tất cả
các node trong mạng trung gian đều muốn nhận message
quảng bá
Với các nhóm chỉ chứa một số lượng nhỏ các thành viên
của lớp mạng trung gian, nó không có khả năng quảng bá
message tới toàn bộ mạng trung gian, thay vào đó một
mạng trung gian mini sẽ được tạo ra và đưa vào sử dụng
Tree building:
Thay vì sử dụng một lớp trung gian riêng biệt cho mỗi
nhóm, ta sẽ xây dựng một cây cho mỗi nhóm đó.
Message quảng bá khi tới nhóm sẽ được nhân bản thông
qua cây chuyển tiếp tương ứng của nhóm
Thúc đẩy việc định vị đối tượng và các thuộc tính định
tuyến của mạng trung gian để tạo nhóm và tham gia vào
nhóm
Trình ứng dụng sau đó sẽ tạo ra các cây và sử dụng các
cây đó để quảng bá message
Sự thực thi của lớp trung gian trên một
nhóm
Khi quảng bá theo cách phát tràn (flooding) yêu cầu
mỗi nhóm phải có một lớp trung gian riêng biệt
Trong trường hợp đặc biệt, một client muốn tham
gia vào 1 nhóm nó trước tiên nó phải tìm được lớp
trung gian của nhóm đó. Để thực hiện được chức
năng tìm kiếm này yêu cầu phải có một dịch vụ tên
phân phối
Chúng ta nghiên cứu hoạt động của giải thuật phát
tràn trên CAN và Pastry
CAN Flooding
Cách dễ nhất để thực hiện flooding trên mạng trung
gian CAN là với mỗi một node khi nhận được một
message nó sẽ chuyển tiếp message đó tới tất cả
các node láng giềng của nó
Khai thác cấu trúc tọa độ không gian của CAN để
giới hạn các hướng mà các node sẽ chuyển tiếp đi
message nó vừa nhận được làm giảm đáng kể
số message lặp
Pastry Flooding
Sử dụng toàn bộ đầu vào trong bảng định tuyến của
mỗi node để phát tràn message
Một node muốn quảng bá một message sẽ chuyển
tiếp các bản copy của message đó tới tất cả các
node có mặt trong bảng định tuyến của nó. Mỗi bản
copy sẽ được gắn thêm một nhãn ghi cấp độ L của
node đích
Sự thực thi của cây trên một nhóm
Sử dụng phương pháp tiếp cận của Scribe. Scribe
là một ứng dụng quảng bá cơ sở sử dụng Pastry
Scribe sử dụng việc đảo ngược đường dẫn chuyển
tiếp để xây dựng cây quảng bá trên mỗi nhóm
Mỗi một nhóm được xác định bởi một groupid, node
chịu trách nhiệm với vùng không gian có chứa
groupid là gốc của cây.
Sự thực thi của cây trên một nhóm (cont)
Để gia nhập vào nhóm, một node gửi đi một
message thông qua lớp trung gian tới groupid.
Message này sẽ được chuyển tiếp tới gốc của cây.
Các node cùng với con của nó ở trong cây được gọi
là người chuyển tiếp và có thể không phải là thành
viên của nhóm
Scribe cung cấp một cơ chế để loại bỏ nút cổ chai
bằng cách giảm tải của một node sang node con
của nó để chuyển tiếp xuống các node con tiếp theo
Sự thực thi của cây trên một nhóm (cont)
Scribe có thể tạo ra một cây sâu hơn mức cần thiết
cho một nhóm nhỏ
Scribe có thể xóa bỏ các đường dẫn dài ở trong cây
bằng cách loại bỏ các node không phải là thành
viên của nhóm và chỉ để duy nhất một đầu vào trong
bảng con của nhóm
Scribe chấp nhận trường hợp cả forwarder và root
cùng bị hỏng
Đánh giá
Các tiêu chuẩn đánh giá
Tiêu chuẩn về độ trễ:
Sử dụng ứng dụng quảng bá làm tăng độ trễ tới việc chuyển
phát các message quảng bá có liên quan đến IP multicast.
Để ước tính điều trên chúng ta đo sự phân phối của độ trễ
tới việc chuyển phát 1 message tới mỗi một thành viên của
nhóm
Sử dụng sự phân phối bên trên để tính toán 2 độ đo của độ
trễ: RMD và RAD
RMD là tỉ lệ giữa độ trễ cực đại khi sử dụng ứng dụng
quảng bá với độ trễ cực đại khi sử dụng IP Multicast
RAD là tỉ lệ giữa độ trễ trung bình khi sử dụng ứng dụng
quảng bá với độ trễ trung bình khi sử dụng IP Multicast
Các tiêu chuẩn đánh giá (cont)
Cường độ làm việc của các kết nối:
Các ứng dụng quảng bá chỉ làm tăng áp lực (gánh nặng)
công việc lên mạng có liên quan đến IP Multicast
Sử dụng độ đo cường độ làm việc của các kết nối để ước
lượng gánh năng công việc lên tầng mạng
Chúng ta đo mức độ căng thẳng (tình trạng bận –rỗi) của
mỗi đường kết nối trực tiếp trong topo mạng bằng cách
đếm số gói tin đã gửi đi trên đường kết nối đó
Các tiêu chuẩn đánh giá (cont)
Cường độ làm việc của mỗi node:
Ở ứng dụng quảng bá, các node cuối chịu trách nhiệm duy
trì thông tin định tuyến, chuyển tiếp và nhân bản các gói tin
trong khi các bộ định tuyến thực hiện các công việc đó
trong IP Multicast.
Để đo độ căng thẳng (gánh nặng công việc) bị áp đặt bởi
ứng dụng quảng bá lên một node chúng ta đếm số các
node có trong bảng định tuyến của một node và số lượng
message mà node đã nhận khi các thành viên tham gia
vào nhóm
Độ đo đầu tiên bao 1 sự ủy nhiệm khối lượng thông tin
được duy trì bởi một node, chi phí cho việc duy trì thông
tin đó và số lượng message đã được gửi đi bởi 1 node.
Các tiêu chuẩn đánh giá (cont)
Số lượng message lặp:
Một vài ứng dụng quảng bá khi hoạt động có tạo ra các
message lặp làm hao tổn tài nguyên mạng và làm tăng áp
lực công việc lên các node cuối
Chúng ta đếm số lượng message lặp được nhận bởi mỗi
node cuối và sử dụng làm tiêu chí đánh giá