• Lựa chọn vị trí gia nhập mạng
Giá trị lựa chọn vị trí gia nhập mạng được biểu bằng hằng số CHOICE. Các thử nghiệm dùng chung một bộ dữ liệu với 32 miền, 4096 nút, độ mở rộng trong tối ưu bảng định tuyến (hằng số EXPANSION) bằng 3. Thử nghiệm lấy thời gian trễ trung bình qua 3600 bước.
Hình 19: Biểu đồ thời gian trễ trung bình biến đổi theo CHOICE
Hình 21 có trục X là sự biên thiên hằng số CHOICE, trục Y là giá trị thời gian trễ. Các giá trị CHOICE lần lượt được chọn là 1, 2, 4, 8, 12, 16, 20, 24, 28, 32.
CHOICE = 1 là trường hợp đặc biệt, khi đó, cải tiến này không được thực thi, chỉ còn cải tiến thứ hai – tối ưu bảng định tuyến. Như vậy chỉ cẩn áp dụng giải pháp tối ưu bảng định tuyến, thời gian trễ trung bình cũng đã giảm đi đáng kể (814ms). Một điều đễ nhận thấy rằng nếu lượng lựa chọn càng lớn, vị trí nút tham gia (join) vào mạng sẽ càng tối ưu hơn trong quá trình so sánh, giá trị độ trễ ngày càng giảm. Vì thế hiệu năng của cải tiến đem lại cũng tăng theo. Tuy nhiên, hướng của đồ thị ngày càng thẳng, độ dốc giảm dần khi CHOICE lớn dần. Như vậy, giá trịđộ trễ trung bình sẽ dần tiệm cận đến một mức nào đó mà thôi. Thêm nữa, nếu lượng lựa chọn là nhiều, sẽ gây trễ lớn khi một nút tham gia vào mạng.
• Độ mở rộng tối ưu bảng định tuyến thay đổi
Độ mở rộng được biểu diễn bằng hằng số EXPANSION. Thử nghiệm dùng chung một bộ dữ liệu với 32 miền, 4096 nút, lượng lựa chọn vị trí tham gia mạng là 16. Thử nghiệm mô phỏng qua 3600 bước, rồi lấy giá trị thời gian truy vấn trung bình.
Biểu dồ hình 22 có trục X biểu diễn độ mở rộng, trục Y để biểu diễn độ trễ trung bình. Giá trị EXPANSION lần lượt từ 0 đến 10.
Hình 20: Biểu đồ thời gian trễ trung bình theo EXPANSION
Khi giá trị của EXPANSION tăng, vì có thêm nhiều lựa chọn đồng nghĩa với việc các entry trong bảng định tuyến tối ưu nên thời gian truy vấn trung bình giảm, hiệu quả của cải tiến được nâng lên. Nhưng cũng giống như với CHOICE, độ dốc của đồ thị giảm, thời gian trễ trung bình sẽ tiến gần đến một giá trị nào đó.
EXPANSION = 0, bảng định tuyến không có sự tối ưu vì chỉ có duy nhất một định danh gán cho entry bất kỳ. Lúc này, chỉ còn giải pháp lựa chọn vị trí gia nhập hoạt động, giá trị thời gian trễ trung bình vào khoảng 970, không tốt như khi chỉ có tối ưu bảng định tuyến.
• Số lượng miền và nút thay đổi
Cả hai biểu đồ dưới, mạng Chord cải tiến dùng các giá trị hằng CHOICE =
16, EXPANSION = 3. Hình vẽ 23, lượng nút cốđịnh là 4096, số lượng miền nhận các giá trị 8, 16, 32, 64, 128. Hình vẽ 24, lượng miền cố định 32, lượng nút lần lượt nhận giá trị 512, 1024, 2048, 4096, 8192. Tất cả đều lấy thời gian trễ trung bình sau 3600 bước mô phỏng.
Hình 21: Biểu đồ thời gian trễ trung bình thay đổi theo lượng miền
Sự thay đổi về số lượng miền quyết định mức độ tập trung của nút như thế nào. Khi số lượng nút không đổi, giá trị miền tăng sẽ làm cho mức độ tập trung của các nút kém, khoảng cách trung bình giữa các nút tăng lên, kéo theo thời gian trễ trung bình tăng. Hình 23, trục X biểu diễn sự biến thiên của lượng miền.
Hình 24, trục X biểu diễn sự biến thiên của nút. Khi lượng nút tăng, mỗi nút quản lý một vùng định danh nhỏ hơn, quá trình truy vấn diễn ra lâu hơn do phải chuyển tiếp nhiều lần hơn, theo đó, thời gian truy cập trung bình cũng tăng lên.
Trong cả hai trường hợp trên, đồ thị của Chord cải tiến luôn thấp hơn của Chord truyền thống, dáng của hai đồ thị tương tự nhau. Điều này chứng tỏ, giải pháp tối ưu vẫn đúng đắn và góp phần tăng chất lượng của mạng ngang hàng khi mà các điều kiện mạng thay đổi.
Chương 5. Kết luận 5.1. Kết luận
Khóa luận đã đưa ra một cái nhìn tổng quan về mạng ngang hàng, mạng ngang hàng có cấu trúc, đặc biệt tập trung vào cấu trúc Chord và tiềm năng phát triển các ứng dụng dựa trên cấu trúc mạng này. Sau đó, khóa luận đề cập đến một số vấn đề đối với cấu trúc Chord. Đó là sự sai khác về topo giữa mạng logic và mạng vật lý (topology mismatch), xây dựng bảng định tuyến kém hiệu quả; đồng thời nhấn mạnh sự cần thiết phải tìm cách cải tiến, tối ưu những nhược điểm đó. Khóa luận cũng trích lược một số nghiên cứu giải quyết hai vấn đề trên và ưu nhược điểm của những nghiên cứu đó.
Dựa vào những yêu cầu đưa ra, khóa luận đã đề xuất một giải pháp mới, nhằm khắc phục hai vấn đề trên. Quá trình tối ưu cũng chia thành hai giai đoạn lần lượt giải quyết hai vấn đề mà cấu trúc Chord gặp phải. Thứ nhất, thực hiện lựa chọn vị trí cho nút tham gia vào mạng theo tiêu chí thời gian trễ thấp đến hai nút liền trước và liền sau, vấn đề sai khác về topo phần nào được giải quyết khi các nút gần nhau trên mạng vật lý có thể cũng gần nhau trên mạng phủ. Thứ hai, thực hiện chọn lựa liên kết khi xây dựng bảng định tuyến, sao cho các liên kết là những đường nối có thời gian trễ thấp, thay đổi này sẽ giúp cho tổng thời gian đáp ứng của một thông báo được phát trên mạng sẽ nhỏ hơn nhờ đi qua những liên kết ngắn. Ưu điểm của phương pháp này so với những nghiên cứu trước là rất dễ thực thi trên nền ứng dụng Chord sẵn có, khả năng tùy biến các lựa chọn khá linh hoạt, giúp cho quá trình tối ưu có thể hoạt động được trên từng điều kiện mạng và những ứng dụng sử dụng cấu trúc Chord cụ thể.
Để đánh giá hiệu năng của giải pháp mới, khóa luận đã xây dựng một chương trình, mô phỏng lại một mạng liên kết vật lý, xây dựng mạng ngang hàng có cấu trúc Chord trên mạng vật lý ảo đó, thực hiện việc truy vấn đề lấy thời gian trễ trung bình trên cả cấu trúc Chord truyền thống và Chord sau khi thực thi các giải pháp tối ưu. Kết quả của các phép thử cho thấy, phương pháp tối ưu đem lại hiệu quả thực sự trong việc làm giảm độ trễ của quá trình truyền tin trên mạng ngang hàng.
5.2. Hướng phát triển tiếp theo của đề tài
Kết quả mô phỏng cho thấy tiềm năng của giải pháp tối ưu là rất lớn. Tuy nhiên, đó chỉ là mạng mô phỏng. Để đánh giá hiệu năng của giải pháp một cách đúng đắn nhất, cần thử nghiệm trên một mạng thực sự. Vì thế, trong thời gian sắp tới, hướng đi
Khi thực nghiệm trên mạng thực tế, có rất nhiều vấn đề nảy sinh:
- Sự phân tán hoàn toàn giữa các nút làm cho quá trình cập nhật, thử nghiệm, đồng bộ và lấy kết quả khó khăn.
- Có sự mất gói tin trên mạng thực sự, việc thiết kế giao thức giao tiếp phải được làm thật tốt.
- Các giá trị hằng số lựa chọn lớn sẽ làm cho quá trình tham gia vào mạng và cập nhật bảng định tuyến mất nhiều thời gian, các gói tin ICMP gửi đi đểđo khoảng thời gian trễ có thể gây tràn đường truyền, cản trở giao thông mạng. Như vậy, những vấn đề còn tồn tại không phải là nhỏ. Và để có được những kết quả chính xác, giải pháp tối ưu có ý nghĩa thực sự, làm cơ sở xây dựng những ứng dụng, cần thời gian và sự cố gắng rất nhiều của cả nhóm làm khóa luận.
Tài liệu tham khảo Tiếng Việt
[1] http://vi.wikipedia.org/wiki/ Mạng_đồng_đẳng
[2] Hoàng Ngọc Khánh. Xây dựng mạng ngang hàng có cấu trúc. June 2008. [3] Phan Anh, Nguyễn Đình Nghĩa. Các vấn đề hiện đại trong Công nghệ Thông tin. Lecture 3.
English
[4] http://en.wikipedia.org/wiki/Peer-to-peer
[5] Hancong Duan, Xianliang Lu, Hui Tang; Xu Zhou, Zhijun Zhao. Proximity Neighbor Selection in Structured P2P Network. Computer and Information Technology, 2006.
[6] Jonathan Ledlie and Margo Seltzer. Distributed, Secure Load Balancing with Skew, Heterogeneity, and Churn, In Proceedings of IEEE INFOCOM 2005, March 2005.
[7] Mingsong Sun, Zhongqiu Zhang. Quasi-Chord: physical topology aware structured P2P network.
[8] Ion Stoica, Robert Morris, David Karger, M. Frans Kaashoek, Hari Balakrishnan. Chord: A scalable peer-to-peer lookup service for internet applications. In Proceedings of the 2001 Conference on Applications, Technologies, Architectures,
and Protocols For Computer Communications (San Diego, California, United States).
Phụ lục A
A.1. Định dạng dữ liệu
Thông tin miền
- Dòng đầu tiên chứa một số nguyên n là số lượng miền.
- n*(n+1)/2 dòng tiếp theo, mỗi dòng có cú pháp là a b l. Trong đó, a và b là định danh miền, l là thời gian trễ liên miền giữa hai miền a và b.
32 0 1 171 0 2 161
Thông tin nút
- Dòng đầu số nguyên N là số lượng nút tối đa.
- N dòng sau, mỗi dòng có cấu trúc a s. Trong đó, a là chỉ số nút, s là định danh miền mà nút đó thuộc về.
4096 0 18 1 30
Thông tin sự vào ra (churn)
Gồm nhiều dòng, mỗi dòng có cấu trúc t c a l. Trong đó, t là nhãn thời gian, thời điểm xảy ra sự kiện; c là loại sự kiện, ‘b’ là nút tham gia, ‘d’ là nút rời đi khỏi mạng, giá trị ‘q’ khi quá trình churn kết thúc; a là chỉ số của nút; l là thời gian trễ nội vùng của nút đó.
00000 b 996 7 00000 b 998 25 00001 b 1003 1
Thông tin các truy vấn (query)
Gổm nhiều dòng, mỗi dòng có cú pháp t d n. Trong đó, t là nhãn thời gian; d là định danh tài liệu cần tìm, n là chỉ số của nút nguồn.
0 2609 2642739199 1 3467 2206708070