Phạm Thành Nam và Đtg<br />
<br />
Tạp chí KHOA HỌC & CÔNG NGHỆ<br />
<br />
116 (02): 61 - 66<br />
<br />
CẢI TIẾN HIỆU NĂNG THUẬT TOÁN CHORD DHT<br />
TRONG ĐIỀU KIỆN MẠNG CÓ ĐỘ ỔN ĐỊNH THẤP<br />
Phạm Thành Nam*, Mạc Thị Phƣợng, Nguyễn Thị Minh Huyền<br />
Trường Đại học Công Nghệ Thông tin và Truyền Thông - ĐH Thái Nguyên<br />
<br />
TÓM TẮT<br />
Trong các mạng Peer-to-Peer (P2P) có cấu trúc đƣợc tổ chức theo các bảng băm phân tán DHT thì<br />
vấn đề quan trọng là việc tìm kiếm dữ liệu chính xác và nhanh nhất. Ngày nay trong các môi<br />
trƣờng mạng tổ hợp gồm nhiều các thành phần tham gia vào mạng, việc quản lý các nút mạng này<br />
gặp nhiều khó khăn. Khi mạng ổn định thấp có nghĩa là thời gian gia nhập và rời đi khỏi mạng của<br />
các nút diễn ra trong thời gian ngắn dẫn tới cần phải tìm ra các cơ chế quản lý để đảm bảo duy trì<br />
hiệu năng tìm kiếm dữ liệu ổn định trong mạng.<br />
Trong bài báo này, chúng tôi đề xuất một thuật toán mới cho việc quản lý các nút gia nhập và rời<br />
đi khỏi mạng khi mạng Peer-to-Peer đƣợc tổ chức theo thuật toán Chord DHT trong mạng có độ<br />
ổn định thấp. Thuật toán của chúng tôi đề xuất tiến hành cập nhập tức thời bảng định tuyến của các<br />
nút mạng khi có sự gia nhập/rời đi mới của các nút. Các kết quả mô phỏng của thuật toán đã chỉ ra<br />
rằng thuật toán của chúng tôi cải tiến đáng kể hiệu năng mạng Chord trong điều kiện mạng có độ<br />
ổn định thấp.<br />
Từ khóa: P2P, DHT, DHT Chord, churn rate, DHT performance, lookup, Successor node,<br />
Predecessor node.<br />
<br />
GIỚI THIỆU*<br />
Giới thiệu chung về Chord DHT<br />
Các nghiên cứu về DHT đã đƣợc phát triển<br />
bởi các trƣờng đại học, đƣợc lấy ra từ cộng<br />
đồng mã nguồn mở và đƣợc triển khai ngoài<br />
thực tế. Các kiến thức về DHT hiện có chẳng<br />
hạn nhƣ là Chord[7], Kademlia[11],<br />
Tapestry[2], đó sẽ là các điểm bắt đầu cho các<br />
nghiên cứu phát triển kiến trúc bảng băm<br />
phân tán. Mỗi loại trong số chúng có vô số<br />
các thuộc tính mà có thể kết hợp trong nhiều<br />
cách khác nhau. Trong phạm vi nghiên cứu<br />
này chúng tôi tập trung vào nghiên cứu cải<br />
tiến thuật toán tổ chức bảng băm phân tán<br />
Chord DHT trong điều kiện mạng ổn định<br />
thấp (các nút gia nhập/rời đi khỏi mạng trong<br />
thời gian ngắn).<br />
Trong bài báo này chúng tôi đề xuất hai cơ<br />
chế để cải tiến hiệu năng tìm kiếm dữ liệu của<br />
thuật toán Chord DHT đƣợc giới thiệu trong<br />
[7]. Thuật toán [5] cải tiến quá trình gia nhập<br />
của các nút bằng cách đƣa ra một cơ chế<br />
thông báo cập nhập lại bảng định tuyến, tuy<br />
nhiên trong thuật toán này có các nhƣợc điểm<br />
đó là:<br />
*<br />
<br />
Email: ptnam@ictu.edu.vn<br />
<br />
Duy trì một thẻ bài làm cho tại một thời điểm<br />
nút mạng chỉ xử lý đƣợc một yêu cầu gia<br />
nhập mạng.<br />
Chƣa có cơ chế xử lý cho tiến trình rời đi của<br />
các nút trong mạng.<br />
Do đó chúng tôi đề xuất sử dụng 2 cơ chế mới:<br />
Cơ chế đầu tiên để điều chỉnh cho các nút<br />
mạng gia nhập mạng tiến hành cập nhập tức<br />
thời bảng định tuyến.<br />
Cơ chế thứ hai dành cho tiến trình rời đi khỏi<br />
mạng của các nút. Khi các nút rời mạng tiến<br />
hành thông báo tới các nút bên cạnh nó cập<br />
nhập lại bảng định tuyến.<br />
Chúng tôi tiến hành đánh giá hiệu năng thuật<br />
toán mới chúng tôi đề xuất bằng phƣơng pháp<br />
mô phỏng và đƣợc thực hiện trên công cụ mô<br />
phỏng OMNeT++. Đây là công cụ mô phỏng<br />
mạng P2P rất phổ biến hiện nay dành cho học<br />
tập và nghiên cứu.<br />
Các điểm yếu của Chord DHT trong điều<br />
kiện mạng có độ ổn định thấp<br />
Trong môi trƣờng mạng vô tuyến có độ ổn<br />
định thấp (churn rate cao) thì mạng Chord đã<br />
bộc lộ rõ các điểm yếu của mình. Trong các<br />
nghiên cứu [4], [5], [8], [12] trong điều kiện<br />
mạng P2P tổ chức theo Chord có độ ổn định<br />
61<br />
<br />
Phạm Thành Nam và Đtg<br />
<br />
Tạp chí KHOA HỌC & CÔNG NGHỆ<br />
<br />
116 (02): 61 - 66<br />
<br />
thấp thì mạng Chord bộc lộ các điểm yếu:<br />
không có sự cập nhập bảng định tuyến tức<br />
thời khi có sự thay đổi nút mạng, không có cơ<br />
chế sao chép các khóa, không có cơ chế lƣu<br />
trữ kết quả tìm kiếm.<br />
Một trong những lý do chính cho việc suy<br />
giảm hiệu năng mạng Chord khi có biến động<br />
về nút mạng đó chính là sự không chính xác<br />
của con trỏ các nút trong mạng. Chính các<br />
con trỏ này đƣợc sử dụng chủ yếu trong hoạt<br />
động tìm kiếm trong mạng. Khi một nút gia<br />
nhập vào mạng, mạng Chord không ngay lập<br />
tức kiểm tra các con trỏ successor và<br />
predecessor của tất cả các nút xung quanh nút<br />
mới gia nhập đó. Thay vào đó, Chord chỉ<br />
kiểm tra vài con trỏ và tin vào tiến trình ổn<br />
định mạng trƣớc để kiểm tra sự chuẩn xác của<br />
các con trỏ còn lại. Tƣơng tự, Chord sử dụng<br />
tiến trình ổn định mạng có tính chu kỳ để điều<br />
chỉnh lại các con trỏ không còn chuẩn xác khi<br />
các nút trong mạng bị hỏng. Khi mà có nút<br />
mới gia nhập vào mạng, dẫn đến một vài con<br />
trỏ tới nút lân cận không còn chính xác nữa<br />
trong khoảng thời gian chờ đến tiến trình gọi<br />
ổn định lại mạng và kết quả dẫn đến việc tìm<br />
kiếm không chính xác trong khoảng thời gian<br />
này do đó làm giảm hiệu năng của mạng.<br />
Tiến trình gia nhập mạng Chord đƣợc minh<br />
nhƣ sơ đồ hình 1. Giả sử rằng trên vòng<br />
Chord, nút q đang là successor của nút p và<br />
nút r muốn gia nhập mạng có ID nằm giữa ID<br />
của p và q (a). Nút r sẽ gửi bản tin join<br />
request đến một nút bootstrap mà nó biết<br />
trƣớc, nút này sẽ chuyển tiếp bản tin join<br />
request này tới nút q mà nó sẽ là successor<br />
của nút r. Nút q sẽ thiết lập con trỏ<br />
predecessor của nó vào nút r và gửi bản tin<br />
báo hiệu join response đến nút r. Trong<br />
khoảng thời gian nhập bản tin này, nút r cũng<br />
tiến hành thiết lập con trỏ successor của nó<br />
vào nút q (b). Trƣớc thời điểm gọi chu kỳ ổn<br />
định lại mạng tiếp theo tại nút p, con trỏ<br />
successor của nút p không còn chính xác (c).<br />
Điều này dẫn đến nút p sẽ trả về kết quả<br />
không chính xác khi nhận đƣợc một tìm kiếm<br />
cho nút r trong khoảng thời gian này.<br />
62<br />
<br />
(a) Trước khi nút r gia nhập<br />
<br />
(b) Tiến trình gia nhập mạng của nút r<br />
<br />
(c) Sau tiến trình gia nhập<br />
Hình 1. Sự không chính xác của con trỏ các nút<br />
trong tiến trình gia nhập mạng.<br />
<br />
Các nghiên cứu liên quan<br />
Các cơ chế giải quyết vấn đề không chính xác<br />
của con trỏ các nút trong tiến trình gia nhập<br />
mạng đƣợc đƣa ra nhƣ là “automic ring<br />
maintenance” của Ali Ghodsi[1]. Cơ chế này<br />
sử dụng một thẻ lock để hạn chế việc đồng<br />
thời gia nhập mạng của các nút. Trong nghiên<br />
cứu của mình, nhóm tác giả Nguyen Chan<br />
Hung[5] đã đƣa ra một cơ chế đƣợc phát triển<br />
lên từ nghiên cứu của Ali Ghodsi gọi là<br />
MRLChord (Modify Ring Lock for Chord<br />
DHT). Hình 2 là một biểu đồ tuần tự mô tả cơ<br />
chế gia nhập đã đƣợc sửa đổi của một nút vào<br />
mạng theo cơ chế MRLChord.<br />
<br />
Hình 2. Biểu đồ tuần tự biểu diễn tiến trình gia<br />
nhập mạng của thuật toán MRLChord<br />
<br />
Phạm Thành Nam và Đtg<br />
<br />
Tạp chí KHOA HỌC & CÔNG NGHỆ<br />
<br />
Từ biểu đồ trên ta có thể thấy khi một nút r<br />
muốn gia nhập mạng, nó giữ thẻ bài và gửi<br />
bản tin báo hiệu xin gia nhập mạng đến một<br />
nút bootstrap. Yêu cầu gia nhập mạng này sau<br />
đó đƣợc chuyển tiếp tới nút q là successor của<br />
nút r(1). Nếu thẻ lock mà nút q đang giữ ở<br />
trạng thái free, nút q này sẽ thiết lập thẻ lock<br />
= taken điều này giúp cho nút q luôn ở trạng<br />
thái bận với các yêu cầu đến khác. Sau đó nó<br />
gửi bản tin join response về cho nút r(2). Khi<br />
nhận đƣợc bản tin join response, nút r thiết<br />
lập con trỏ successor của nó tới nút q và con<br />
trỏ predecessor tới nút p. Nút r sau đó gửi bản<br />
tin successor hint tới nút p để thông báo cho<br />
nút p biết về successor mới (3). Sau khi nút p<br />
nhận đƣợc bản tin này, nó thiết lập con trỏ<br />
successor của nó tới nút r và đồng thời cũng<br />
gửi bản tin successor acknowledge tới nút q<br />
(4). Nút q khi nhận đƣợc bản tin này sẽ thiết<br />
lập thẻ lock = free, sau đó trả về bản tin join<br />
done đến nút r (5). Cuối cùng nút r nhận bản<br />
tin join done và thiết lập thẻ lock = free. Để<br />
tránh tình huống deadlock, mỗi nút có một<br />
định thời lock timeout. Khi một nút thiết lập<br />
thẻ lock của nó sang trạng thái “taken”, nó<br />
cũng bắt đầu định thời. Nếu vƣợt quá thời<br />
gian định thời thì thẻ lock sẽ đƣợc thiết lập<br />
sang trạng thái “free”.<br />
Ở đây có sự kết hợp giữa cơ chế stabilization<br />
và lock timeout. Sự khác biệt so với thuật toán<br />
Ali Ghodsi[1] đó là quá trình stabilization<br />
trong mạng không chỉ chạy theo chu kỳ mà<br />
còn đƣợc lật theo sự kiện timeout.<br />
ĐỀ XUẤT THUẬT TOÁN MCHORD CẢI<br />
TIẾN HIỆU NĂNG MẠNG P2P CHORD<br />
Cơ chế sửa đổi cho tiến trình gia nhập mạng<br />
Dựa theo các nghiên cứu [1], [5] chúng tôi đề<br />
xuất một cơ chế giải quyết bài toán hiệu năng<br />
tìm kiếm dữ liệu của Chord DHT trong điều<br />
kiện mạng có độ ổn định thấp gọi là<br />
“Modified Chord - MChord”. Khác với<br />
nghiên cứu [5] ở đây các nút trong mạng<br />
Chord không cần phải duy trì thẻ bài lock,<br />
điều này cho phép các nút đƣợc tự do xử lý<br />
các yêu cầu gia nhập mạng đồng thời trao đổi<br />
<br />
116 (02): 61 - 66<br />
<br />
các bản tin RPC tại mọi thời điểm mà không<br />
cần phải đợi đến khi thẻ bài lock = free nhƣ<br />
trên. Khi nút gia nhập mạng thì ngay lập tức<br />
nó sẽ thông báo cho nút successor và<br />
predecessor của nó cập nhập ngay các con trỏ<br />
của mình. Điều này giúp làm tăng thêm độ<br />
chính xác của quá trình tìm kiếm dữ liệu.<br />
<br />
Hình 3. Biểu đồ tuần tự biểu diễn tiến trình gia nhập<br />
mạng của một nút sử dụng thuật toán MChord<br />
<br />
Từ trên biểu đồ ta có thể thấy khác với hoạt<br />
động gia nhập mạng bình thƣờng khi một nút<br />
r muốn gia nhập mạng nó gửi bản tin báo hiệu<br />
xin gia nhập mạng đến một nút bootstrap.<br />
Yêu cầu gia nhập mạng này sau đó đƣợc<br />
chuyển tiếp tới nút q là successor của nút r(1).<br />
Khi mà q nhận đƣợc yêu cầu gia nhập mạng<br />
của nút r thì nó ngay lập tức sẽ cập nhập con<br />
trỏ predecessor của nó về nút r thay vì nút p<br />
cũ. Sau đó nó gửi bản tin join response về cho<br />
nút r(2). Khi nhận đƣợc bản tin join response,<br />
nút r thiết lập con trỏ successor của nó tới nút<br />
q và con trỏ predecessor của nó tới nút p. Nút<br />
r sau đó gửi bản tin successor hint tới nút p để<br />
thông báo cho nút p biết về successor mới (3).<br />
Sau khi nút p nhận đƣợc bản tin này, nó thiết<br />
lập ngay lập tức con trỏ successor của nó tới<br />
nút r thay vì nút q cũ.<br />
Nhƣ vậy tiến trình gia nhập mạng mới này<br />
khác với tiến trình cũ đó là không cần phải<br />
đợi đến chu kỳ ổn định mạng tiếp theo các nút<br />
mới tiến hành cập nhập lại các con trỏ của<br />
mình. Khi nhận đƣợc yêu cầu gia nhập mạng<br />
thì các nút lân cận nút gia nhập mạng sẽ ngay<br />
lập tức tiến hành cập nhập lại các con trỏ của<br />
mình. Do đó luôn đảm bảo sự chuẩn xác của<br />
các con trỏ trong mạng và làm tăng hiệu năng<br />
tìm kiếm dữ liệu trong mạng.<br />
63<br />
<br />
Phạm Thành Nam và Đtg<br />
<br />
Tạp chí KHOA HỌC & CÔNG NGHỆ<br />
<br />
Thuật toán MChord của chúng tôi cho tiến<br />
trình gia nhập mạng có nhiều ƣu điểm hơn so<br />
với thuật toán MRLChord đó là sử dụng số<br />
lƣợng bản tin ít hơn nên sẽ giảm tải trọng<br />
trong mạng. Không sử dụng thẻ bài nên các<br />
nút có thể tự do trao đổi các bản tin RPC tại<br />
mọi thời điểm mà không cần phải đợi khi thẻ<br />
bài đƣợc giải phóng.<br />
<br />
116 (02): 61 - 66<br />
<br />
giờ là nút p(1). Tƣơng tự nó cũng gửi bản tin<br />
new successor hint cho predecessor p của nó<br />
để thông báo về successor mới của nó bây giờ<br />
là nút q(2). Nút p sau khi nhận đƣợc bản tin<br />
này sẽ gửi lại bản tin successor acknowledge<br />
tới nút q(3) để thông báo tiến trình cập nhập<br />
thành công.<br />
<br />
Cơ chế sửa đổi cho tiến trình rời mạng<br />
Trong thực tế trong môi trƣờng mạng có<br />
churn rate cao nhƣ môi trƣờng các mạng vô<br />
tuyến không dây thì hiện tƣợng các nút rời<br />
mạng một cách ngẫu nhiên và không có thông<br />
báo là phổ biến. Khi đó con trỏ của các nút<br />
lân cận với nút vừa rời đi khỏi mạng sẽ không<br />
còn chính xác khi mà vẫn chƣa đến thời gian<br />
gọi tiến trình stabilization ổn định lại mạng.<br />
Nếu trong khoảng thời gian này có yêu cầu<br />
tìm kiếm tới các nút vừa rời đi sẽ dẫn tới kết<br />
quả trả về không chính xác.<br />
Để khắc phục hiện tƣợng này chúng tôi đƣa ra<br />
một cơ chế khi các nút rời khỏi mạng có<br />
thông báo để các nút lân cận nút rời đi này<br />
cập nhập lại chính xác con trỏ của chúng.<br />
Hình 4 minh họa cơ chế một nút r rời khỏi<br />
mạng có thông báo<br />
<br />
Hình 4. Minh họa tiến trình rời mạng có thông báo<br />
<br />
Biểu đồ tuần tự mô tả tiến trình rời mạng có<br />
thông báo đƣợc mô tả trong hình 5. Nút r nằm<br />
trên vòng Chord có ID nằm giữa ID nút p và<br />
q. Một nút r chuẩn bị rời mạng sẽ gửi cho nút<br />
successor q của nó bản tin new predecessor<br />
hint thông báo về predecessor mới của nó bây<br />
64<br />
<br />
Hình 5. Biểu đồ tuần tự thể hiện quá trình rời đi<br />
có thông báo<br />
<br />
ĐÁNH GIÁ THUẬT TOÁN MCHORD<br />
Thiết lập các thông số mô phỏng<br />
Chúng tôi triển khai đánh giá thuật toán<br />
MChord bằng cách sử dụng công cụ mô<br />
phỏng OverSim[6]. Đây là công cụ mô phỏng<br />
mạng P2P đƣợc phát triển trên khung làm<br />
việc OMNeT++ framework[10], hiện nay<br />
đang trở nên phổ biến sử dụng trong học tập<br />
và nghiên cứu.<br />
Bảng 1. Kịch bản cài đặt các tham số mô phỏng<br />
Loại<br />
Tên tham số<br />
Giá trị<br />
tham số<br />
Tham số<br />
100, 500,<br />
mô phỏng<br />
Node numbers<br />
1000, 1500,<br />
chung<br />
2000 (node)<br />
120, 180,<br />
Churn rates<br />
360, 540, 720<br />
(s)<br />
Stabilize delay<br />
10 (s)<br />
Các tham<br />
Fix fingers<br />
số cơ bản<br />
20 (s)<br />
delay<br />
mạng<br />
Successor list<br />
Chord<br />
8<br />
size<br />
xacSuat_leaveN<br />
0.5<br />
otify<br />
Chord<br />
Modified<br />
aggressiveJoin<br />
true<br />
Mode<br />
<br />
Chúng tôi tiến hành mô phỏng thuật toán<br />
MChord trên cùng một bộ tham số so với<br />
thuật toán MRLChord[5] để so sánh đánh giá.<br />
<br />
Phạm Thành Nam và Đtg<br />
<br />
Tạp chí KHOA HỌC & CÔNG NGHỆ<br />
<br />
116 (02): 61 - 66<br />
<br />
Để mô tả mạng có độ ổn định thấp chúng tôi<br />
thay đổi các tham số churn rates trong dải từ<br />
120s – 720s. Bảng 1 chỉ ra kịch bản cài đặt<br />
các tham số mô phỏng.<br />
<br />
đƣợc mô tả nhƣ trong hình 7. Chúng ta có thể<br />
quan sát thấy rằng hiệu năng tìm kiếm dữ liệu<br />
của cả hai thuật toán đều giảm khi số lƣợng<br />
các nút mạng tăng lên.<br />
<br />
Hình 6. So sánh tỉ lệ tìm kiếm dữ liệu thành công<br />
giữa MRLChord vs MChord khi churn rate thay đổi<br />
<br />
KẾT LUẬN<br />
Trong bài báo này chúng tôi đã đề xuất một<br />
thuật toán MChord mới giúp cải thiện hiệu<br />
năng tìm kiếm dữ liệu trong mạng Chord.<br />
Chúng tôi có đánh giá so sánh với các nghiên<br />
cứu trƣớc đó của Ali Ghodsi[1] và thuật toán<br />
MRLChord đƣợc giới thiệu trong [5]. Các kết<br />
quả mô phỏng bằng công cụ mô phỏng mạng<br />
OverSim đã chỉ ra rằng thuật toán của chúng<br />
tôi cải tiến đáng kể hiệu năng tìm kiếm dữ<br />
liệu của mạng Chord. Kết quả mô phỏng cũng<br />
chỉ ra rằng thuật toán của chúng tôi đề xuất<br />
luôn có tỉ lệ tìm kiếm dữ liệu thành công cao<br />
hơn so với thuật toán MRLChord.<br />
Tƣơng lai, nghiên cứu có thể tiến hành triển<br />
khai thuật toán của chúng tôi trên các cấu trúc<br />
mạng Peer-to-Peer khác nhƣ là Kademlia,<br />
TapeStry. Hoặc tiến hành các cơ chế khác để<br />
nâng cao hiệu năng tìm kiếm dữ liệu trong<br />
mạng nhƣ là thực hiện các cơ chế lƣu trữ kết<br />
quả tìm kiếm, thực hiện các phƣơng thức định<br />
tuyến dữ liệu chính xác nhanh gọn khác.<br />
<br />
Hình 7. So sánh tỉ lệ tìm kiếm thành công giữa<br />
thuật toán MRLChord vs MChord khi số node<br />
mạng thay đổi<br />
<br />
Phân tích kết quả<br />
Hình 6 so sánh kết quả tỉ lệ tìm kiếm thành<br />
công của thuật toán MRLChord và MChord<br />
trong các điều kiện churn rate khác nhau. Có<br />
thể thấy rằng mạng Chord modified đạt đƣợc<br />
tỉ lệ tìm kiếm dữ liệu thành công cao hơn so<br />
với mạng MRLChord trong tất cả các trƣờng<br />
hợp. Tuy nhiên khi mạng biến động lớn churn<br />
rate từ 120s đến 180s thì tỉ lệ tìm kiếm dữ liệu<br />
thành công trong mạng vẫn còn thấp mặc dù<br />
đƣợc cải thiện đáng kể so với thuật toán<br />
MRLChord. Hiệu năng mạng MChord chỉ tăng<br />
nhanh và đạt ổn định khi churn rate > 540s.<br />
Để đánh giá hiệu năng tìm kiếm dữ liệu của<br />
mạng MChord và MRLChord chúng tôi còn<br />
tiến hành điều chỉnh các kích thƣớc mạng từ<br />
100 nodes tới 2000 nodes. Kết quả so sánh<br />
<br />
TÀI LIỆU THAM KHẢO<br />
1. Ali Ghodsi. (2006) “Distributed k-aray<br />
System: Algorithms for Distributed Hash<br />
Table”, PhD dissertation, KTH-Royal Insitude<br />
of Technology.<br />
2. B. Zhao, J. Kubiatowicz, and A. Joseph, (2001)<br />
“Tapestry: An Infrastructure for Fault-Tolerant<br />
Wide-Area Location and Routing,” Computer.<br />
3. Gurmeet Singh Manku. Dipsea (August 2004):<br />
A Modular Distributed Hash Table. Ph. D. Thesis<br />
(Stanford University).<br />
4. Hung Nguyen Chan, Giang Ngo Hoang, Thang<br />
Le Quang, Tan Pek Yew, (12/2007) “Performance<br />
study of Chord, Kelips and Tapestry protocols on<br />
structured Peer-to-Peer Overlay Networks”,<br />
Special issues of Post & Telecommunications &<br />
Information Technology Journal, issue 2.<br />
5. Hung Nguyen Chan, Giang Ngo Hoang, Vinh<br />
Vu Thanh, etc “Performance improvement of<br />
Chord Distributed Hash Table under high churn<br />
rate”, International conferences on Advanced<br />
Technologies for Communications ATC2009, Ha<br />
Noi, VietNam.<br />
<br />
65<br />
<br />