Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 44 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
44
Dung lượng
1,27 MB
Nội dung
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG KHOA CÔNG NGHỆ THÔNG TIN BÁO CÁO THỰC TẬP TỐT NGHIỆP Nội dung: NGHIÊN CỨU VỀ CẤU TRÚC MẠNG NGANG HÀNG VÀ CÂN BẰNG TẢI TRÊN MẠNG CÓ CẤU TRÚC Nơi thực tập : Viện CNTT&TT-CDIT Người hướng dẫn : Ths Đỗ Mạnh Hùng Sinh viên thực tập: Đỗ Yến Hoa Mã sinh viên : B112104 257 Lớp : D11HTTT3 Khóa : 2011 – 2016 Hệ đào tạo : Chính quy Hà Nội, 08/2015 MỤC LỤC LỜI CẢM ƠN PHẦN A : GIỚI THIỆU ĐƠN VỊ THỰC TẬP VIỆN CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG - CDIT I Chức II Tổ chức III Các lĩnh vực hoạt động PHẦN B : NỘI DUNG THỰC TẬP I Giới thiệu chung II Nội dung báo cáo thực tập DANH MỤC THUẬT NGỮ DANH MỤC HÌNH VẼ 10 TỔNG QUAN MẠNG NGANG HÀNG 11 1.1 Đặt vấn đề: 11 1.2 Khái niệm Peer to Peer 12 1.3 Lịch sử mô hình Peer to Peer 13 1.4 Các lĩnh vực ứng dụng mạng ngang hàng 15 1.5 Cấu trúc mạng 20 1.5.1 Mạng cấu trúc 20 1.5.2 Mạng có cấu trúc 20 1.6 Mức độ phân tán 21 1.7 Mạng ngang hàng có cấu trúc kĩ thuật bảng băm phân tán 23 1.8 Mạng chord 28 1.8.1 Mô hình mạng Chord 29 1.8.2 Ánh xạ khóa vào node Chord 30 1.8.3 Tìm kiếm mạng Chord 31 1.8.4 Tham gia ổn định mạng 31 CÂN BẰNG TẢI TRONG MẠNG NGANG HÀNG CÓ CẤU TRÚC 33 2.1 Cân tải 33 2.2 Khả tải node 35 2.3 Nguyên nhân cân tải mạng 36 2.4 Giải pháp cân tải sử dụng virtual node 38 TÀI LIỆU THAM KHẢO 43 III Phần tổng kết 44 Các vấn đề báo cáo đạt 44 Các vấn đề báo cáo chưa đạt 44 Hạn chế tồn 44 Hướng nghiên cứu 44 Nguyện vọng 44 LỜI CẢM ƠN Em xin chân thành cảm ơn thầy giáo – Th.s Đỗ Mạnh Hùng giảng dạy tận tình cho em nhiều lời khuyên không kiến thức học tập mà phương pháp nghiên cứu để em hoàn thành báo cáo thực tập tốt nghiệp Em xin gửi lời cảm ơn đến thầy cô giáo Khoa Công Nghệ Thông Tin trường Học Viện Công Nghệ Bưu Chính Viễn Thông, gia đình, bạn bè đóng góp ý kiến giúp đỡ em trình thực tập tốt nghiệp Trong suốt trình nghiên cứu làm báo cáo thực tập, thân em cố gắng tập trung tìm hiểu, nghiên cứu tham khảo thêm nhiều tài liệu liên quan Tuy nhiên, báo cáo tránh khỏi thiếu sót, em r t mong nhận bảo thầy cô giáo góp ý bạn bè để hoàn thiện Em xin chân thành cảm ơn! Hà Nội, Ngày 06 Tháng 08 Năm 2015 Sinh viên Đỗ Yến Hoa PHẦN A : GIỚI THIỆU ĐƠN VỊ THỰC TẬP VIỆN CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG - CDIT I Chức Trung tâm Công nghệ Thông tin CDIT Tổng giám đốc Tổng Công ty Bưu Viễn thông Việt Nam ký định thành lập số 636/QĐ.TCCB-LĐ ngày 22 tháng năm 1999 Cùng với phát triển ngành Công nghệ thông tin xu hướng hội nhập với Truyền thông, theo định hướng phát triển Học viện giai đoạn mới, ngày 07 tháng 12 năm 2011 Tập đoàn Bưu Viễn thông Việt Nam có định số 1973/QĐ-VNPT-TCCB, đổi tên Trung tâm Công nghệ thông tin thành Viện công nghệ Thông tin Truyền thông CDIT từ 01/01/2012 Viện công nghệ Thông tin Truyền thông CDIT tổ chức đào tạo, nghiên cứu trực thuộc Học viện Công nghệ Bưu Viễn thông, có nhiệm vụ: đào tạo, nghiên cứu khoa học chuyển giao công nghệ lĩnh vực Công nghệ thông tin Truyền thông II Tổ chức Mô hình tổ chức bao gồm: - Ban Lãnh đạo Viện Khoa Đa phương tiện - Phòng Tổng hợp - Phòng Nghiên cứu phát triển & Đào tạo Ứng dụng Đa phương tiện - Phòng Nghiên cứu phát triển & Đào tạo An toàn thông tin - Phòng Nghiên cứu phát triển Ứng dụng ICT (Phòng Viễn thông) - Phòng Nghiên cứu phát triển Hạ tầng ICT (Phòng Mạng & Hệ thống) - Phòng Dịch vụ & Chuyển giao công nghệ III Các lĩnh vực hoạt động Viện công nghệ thông tin truyền thông CDIT hoạt động lĩnh vực công nghệ thông tin, cụ thể là nghiên cứu, ứng dụng thành tựu khoa học công nghệ vào sản phẩm, dịch vụ chương trình đào tạo nhằm góp phần thúc đẩy phát triển đ t nước PHẦN B : NỘI DUNG THỰC TẬP I Giới thiệu chung - Tên chủ đề thực tập: Ngiên cứu c u trúc mạng ngang hàng cân tải mạng có c u trúc - Mục tiêu: Nghiên cứu mô hình mạng ngang hàng P2P, tìm hiểu công nghệ sử dụng mạng ngang hàng internet nay, tìm hiểu cân tải, sảy tượng m t cân tải giải pháp cân tải node mạng mạng ngang hàng có c u trúc - Kết cần đạt: Hoàn thành nghiên cứu nộp báo cáo hạn theo nội dung công việc phân công kế hoạch, nắm rõ mạng ngang hàng P2P, kiểu kiến trúc, phân loại, chế hoạt động v n đề xoay quanh việc cân tải mạng ngang hàng có cáu trúc - Nội dung: Bảng nội dung công việc phân công: TT Nội dung thực tập Thời gian Mục tiêu Ghi Xây dựng đề cương Từ ngày 29/06/2015 Hoàn thành đề cương Tuần thực tập Nghiên đến ngày 05/07/2015 thực tập cứu Từ ngày 06/07/2015 - Khái niệm, mục đích Tuần mạng ngang hàng đến ngày 12/07/2015 mạng ngang hàng - Khái niệm mạng có c u trúc mạng c u trúc - Mức độ phân tán: Mô hình phân tán hoàn toàn, mô hình phân tán phần, mô hình phân tán lai - Mạng ngang hàng có c u trúc kĩ thuật bảng băm phân tán (DHTDistributed hash tables) Nghiên cứu Từ ngày 13/07/2015 Nghiên cứu thuật toán Tuần mạng ngang hàng đến ngày 19/07/2015 DHT-Chord sử dụng mạng ngang hàng có c u trúc Nghiên cứu cân Từ ngày 20/07/2015 -Khái niệm cân tải tải đến ngày 26/07/2015 khái niệm liên mạng ngang hàng quan có c u trúc -Khả tải node Tuần (peer) Nghiên cứu cân Từ ngày 27/07/2015 - Nguyên nhân m t cân tải đến ngày 02/08/2015 tải mạng mạng ngang hàng - Giải pháp cân tải có c u trúc sử dụng virtual node Tuần Mô thuật toán loadbalancing sử dụng virtual node Hoàn thành cáo thực tập báo Từ ngày 03/08/2015 đến ngày 09/08/2015 Tuần II Nội dung báo cáo thực tập DANH MỤC THUẬT NGỮ Thuật ngữ Peer Ý nghĩa Thuật ngữ dùng để máy tính tham gia vào mạng lưới ngang hàng Node Thuật ngữ node tương tự thuật ngữ peer Chỉ máy tính tham gia vào mạng lưới ngang hàng P2P Peer – to – peer Load Balancing Cân tải DHT Distribuited hash table – bảng băm phân tán Chord Giao thức sử dụng mạng ngang hàng Server Máy chủ Client Máy thành viên Virtual node Node ảo Thuật ngữ thuật toán tạo node ảo máy tính tham gia mạng Key Khóa Value Dữ liệu HTML HyperText Markup Language Là ngôn ngữ đánh d u thiết kế để tạo nên trang web với mẩu thông tin trình bày World Wide Web IP Địa máy tính Port Cổng tham gia dịch vụ Log Ghi t t thao tác thực thành log Upload Chia sẻ file lên mạng Download Tải file từ hệ thống tài nguyên máy tính Size Kích thước DANH MỤC HÌNH VẼ Hình 1: Mạng ngang hàng Hình 2: Napster Hình 3: Mạng ngang hàng có c u trúc Hình 4: Mạng ngang hàng phân tán hoàn toàn Hình 5: Mạng ngang hàng phân tán phần Hình 6: Mạng ngang hàng lai Hình 7: Bảng băm phân tán – DHT Hình 8: Sơ đồ node mạng có c u trúc vòng tròn Hình 9: Sơ đồ tạo DHT vòng tròn Hình 10: Sơ đồ quản lý shortcut peer Hình 11: Sơ đồ peer rời mạng Hình 12: Vòng tròn lưu trữ peer rời mạng Hình 13: Một mạng Chord với node 0, 1, bảng Finger Table ứng với node Hình 14: Lưu giữ key mạng Chord: node lưu key 6, node lưu key node lưu key Hình 15: Phân vùng không gian node thật node ảo Hình 16: Transfer node ảo 10 Trong giá trị trường node dòng i bảng coi finger thứ i node n Thông tin lưu bảng bao gồm IP Port node liên quan Node bảng Finger Table n Successor n, hay gọi Immediate Successor Từ bảng Finger Table ta th y rằng: - Mỗi node cần lưu trữ thông tin số node nh t định bảng định tuyến - Node biết thông tin node gần nhiều node xa - Bằng cách sử dụng bảng Finger Table node n xác định vị trí b t kỳ khóa mạng 1.8.2 Ánh xạ khóa vào node Chord Chord ánh xạ khóa vào node, thường cặp key value Một value address, văn bản, mục liệu Chord thực chức cách lưu cặp key/value node mà key ánh xạ Một node chịu trách nhiệm lưu giữ khóa k node node có định danh id nhỏ nh t id lớn k Một node lưu giữ khóa k gọi Successor k, ký hiệu Successor(k) 30 Hình 14 Lưu giữ key mạng Chord: node lưu key 6, node lưu key node lưu key 1.8.3 Tìm kiếm mạng Chord Khi node n cần tìm kiếm khóa có định danh id, node n tìm node chịu trách nhiệm lưu giữ id Nếu node n xa so với vị trí node lưu giữ id, n nhờ vào thông tin bảng Finger Table để định tuyến đến node xa hơn, từ tìm node chịu trách nhiệm lưu giữ id Ví dụ: Giả sử node muốn tìm successor ID = (hoặc coi khóa) ID =1 thuộc khoảng [7, 3) Node kiểm tra entry thứ bảng định tuyến nó, Bởi nằm trước vòng tròn, node hỏi node để tìm successor Tiếp theo, node tìm bảng định tuyến suy successor node 1, trả lời node node successor khóa ID = 1.8.4 Tham gia ổn định mạng Trong mạng động, thường xuyên có thay đổi với node tham gia rời khỏi b t kì lúc Để xác định vị trí khóa mạng 31 Chord cần thỏa mãn điểm sau: - Mỗi successor node phải trì - Với khóa k, node successor(k) có trách nhiệm quản lý k Khi tham gia vào mạng Chord, node n cần chọn cho định danh id báo cho node bên cạnh biết tham gia Các node Successor Predecessor cần phải cập nhật thông tin node tham gia vào mạng Node n khởi tạo bảng định tuyến Finger Table Để mạng định tuyến sau có tham gia node n, node cần thường xuyên chạy thuật toán ổn định mạng để cập nhật thông tin node bên cạnh (hay node láng giềng) Một số node có lưu thông tin n bảng Finger Table cần cập nhật entry liên quan Finger Table Cuối cùng, node Successor n chuyển phần khóa k mà n Successor(k) cho n lưu giữ Việc chuyển khóa tầng ứng dụng thực Khi node chuẩn bị rời khỏi mạng, cần thông báo cho node bên cạnh biết để ổn định lại mạng Node chuyển khóa lưu giữ cho node Successor 32 CÂN BẰNG TẢI TRONG MẠNG NGANG HÀNG CÓ CẤU TRÚC Với mạng ngang hàng, hoạt động mạng chủ yếu dựa vào khả tính toán băng thông máy tham gia không tập trung vào số nhỏ máy chủ trung tâm mạng thông thường Tuy nhiên, để đảm bảo ch t lượng dịch vụ cho ứng dụng xây dựng mạng ngang hàng có c u trúc cần phải giải v n đề cân tải mạng ngang hàng có c u trúc Chương trình bầy nghiên cứu cân tải giải pháp mạng ngang hàng 2.1 Cân tải Trong mạng máy tính, cân tải kỹ thuật để phân phối khối lượng công việc đồng hai nhiều máy tính, kết nối mạng, CPU, ổ cứng, nguồn lực khác, để có sử dụng nguồn lực tối ưu, tối đa hóa thông lượng, giảm thiểu thời gian đáp ứng, tránh tình trạng tải Sử dụng nhiều thành phần với cân tải, thay thành phần nh t, làm tăng khả làm việc Các dịch vụ cân tải thường cung c p chương trình chuyên dụng thiết bị phần cứng (như chuyển mạch đa tầng máy chủ DNS) Nó thường sử dụng để trung gian truyền thông nội computer clusters ( cụm máy tính ) , đặc biệt high-availability clusters Tính cân Load: Cân tải phần cứng phần mềm đến với nhiều tính đặc biệt Asymmetric load (Không đối xứng tải): tỷ lệ phân công theo cách thủ công để gây số máy chủ phụ trợ để có phần lớn khối lượng công việc người khác Priority activation (Ưu tiên kích hoạt): Khi số lượng máy chủ có sẵn giảm xuống số lượng nh t định, tải cao, máy chủ dự phòng đưa vào sử dụng (online) SSL offload Acceleration: Ứng dụng SSL gánh nặng lớn tài nguyên máy chủ web, đặc biệt vào CPU người dùng cuối th y phản ứng chậm (hoặc máy chủ r t chi tiêu 33 nhiều chu điều họ không dự định để làm) Để giải loại v n đề trên, Cân tải có khả xử lý SSL, giảm tải phần cứng chuyên dụng sử dụng Khi Load Balancers dùng kết nối SSL, gánh nặng Máy chủ Web giảm hiệu su t không làm suy giảm cho người dùng cuối Distributed Denial of Service (DDoS) bảo vệ t n công : cân tải cung c p tính SYN cookie trì hoãn-binding (phía sau máy chủ kết thúc không th y client kết thúc kết hợp TCP) để giảm thiểu t n công SYN Flood nói chung offload làm việc từ máy chủ với tảng hiệu HTTP compression (HTTP nén): làm giảm số lượng liệu chuyển giao cho đối tượng HTTP cách sử dụng nén gzip sẵn t t trình duyệt web đại TCP offload: nhà cung c p khác sử dụng điều khoản khác cho điều này, ý tưởng bình thường yêu cầu HTTP từ client kết nối TCP khác HTTP/1.1 sử dụng tính để củng cố nhiều HTTP theo yêu cầu từ client nhiều vào ổ cắm TCP nh t để máy chủ back-end TCP buffering (TCP đệm): cân tải đệm hồi đáp từ máy chủ spoon-feed liệu chậm client, cho phép máy chủ để chuyển sang nhiệm vụ khác Direct Server Return: lựa chọn để phân phối tải không đối xứng, có yêu cầu trả lời đường mạng khác Kiểm tra Health: thăm dò máy chủ cân cho Health lớp ứng dụng gỡ bỏ máy chủ th t bại từ hồ bơi HTTP caching: việc cân tải lưu trữ nội dung tĩnh số yêu cầu bị xử lý mà không cần liên hệ với máy chủ web Lọc nội dung: số cân tải thay đổi tùy tiện giao thông đường thông qua 34 HTTP bảo mật: số cân tải ẩn trang lỗi HTTP, gỡ bỏ phần đầu nhận dạng máy chủ từ hồi đáp HTTP, cookie mã hóa để người sử dụng cuối thao tác chúng Priority queuing (Ưu tiên xếp hàng): gọi tỷ lệ hình, khả ưu tiên khác để giao thông khác Content aware switching (Nội dung chuyển đổi nhận thức): hầu hết cân tải gửi yêu cầu đến máy chủ khác dựa URL yêu cầu Client authentication (xác thực client ): người dùng xác thực nhiều nguồn khác xác thực trước cho phép họ truy cập vào trang web Programmatic traffic manipulation (thao tác chương trình giao thông): nh t cân tải cho phép sử dụng ngôn ngữ kịch phép tùy chỉnh phương pháp cân tải, thao tác lưu lượng truy cập tùy ý, nhiều Firewall (tường lửa): kết nối trực tiếp tới máy chủ backend phòng ngừa, lý an ninh mạng Phòng chống xâm nhập hệ thống: cung c p ứng dụng lớp bảo mật, thêm vào mạng / lớp vận tải cung c p tường lửa bảo mật 2.2 Khả tải node Mục đích hệ thống P2P chia sẻ tài nguyên sẵn có (bandwidth, storage, CPU power) peers cho người dùng truy v n sử dụng cách hiệu quả.“Hiệu quả” nghĩa hệ thống phải đảm bảo phân chia “tải” đồng peers tốt f cân tải v n đề quan trọng hệ thống P2P Tải (Load/Workload ): phụ thuộc vào hệ thống P2P cụ thể: - Số bit yêu cầu để lưu trữ liệu - Băng thông mạng - Lượng thời gian mà CPU cần để xử lý công việc… 35 Các kí hiệu: n – số nodes hệ thống li – tải ni thời điểm cụ thể ci – Khả tải (capacity) node ni µi – hệ số sử dụng (utilization) node ni = Khi µi > 1, node n bị “nặng tải”, ngược lại node n coi “nhẹ tải” = µ – Hệ số sử dụng hệ thống (system utilization) Khả tải node (C,Target): Là tải lớn nh t mà node nhận Với nút mà tải thực tế thời điểm b t kỳ vượt khả chịu tải lớn nh t nút gọi tải (Overloaded) Một nút tải khả lưu trữ, định tuyến, tính toán… Như trình bày nút có khả tải thuyết nút có tải chưa vượt Theo lý chưa bị coi tải Tuy nhiên thực tế nút hoạt động cần phải có xử lý tải trung gian (temporarily) tải vượt khả tải Vì lý mà ta đưa khái niệm nút có tải cao nút có tải th p Mỗi nút thiết lập ngưỡng tải cao ngưỡng tải th p Tuy nhiên việc xem xét nút có tải cao nút có tải th p phụ thuộc vào thuật toán cụ thể mô hình triển khai cụ thể Trên thực tế tải nút phụ thuộc vào phần cứng sở hạ tầng mạng 2.3 Nguyên nhân cân tải mạng Đối với mạng ngang hàng có c u trúc sử dụng kĩ thuật bảng băm phân tán có nguyên nhân dẫn đến khả m t cân hệ thống: 36 - Khả node không cân phần cứng Trong thực tế nút tham gia vào mạng thường r t đa dạng có khả (CPU, Storage, Bandwidth) khác nhau, có node tham gia vào mạng máy tính đời cũ kết nối Internet chậm (Dial Up), có máy tham gia vào mạng máy có c u hình mạnh kết nối internet băng thông rộng(ADSL) Đối với thực tế vậy, vùng mà gán cho node yếu cho dù phân bố lưu trữ files liệu truy v n hệ thống đạt đồng xảy m t cân tải nghiêm trọng - Định danh node không cân Do định danh chọn cách ngẫu nhiên nên nút phải chịu quản lý vùng với số lượng files liệu gán khác (Thông thường vùng lớn gán số lượng files liệu nhiều hơn) Trong hệ thống lớn với giải thuật sinh ID cho nút mà tình trạng xung đột khác kích cỡ vùng nhỏ nh t lớn nh t lên tới O(NlogN) - Dữ liệu node không cân Nếu liệu phân bố tập trung vào vùng gây tình trạng “nặng tải” khu vực Nói cách khác, vị trí đặt files gây ảnh hưởng lớn tới hiệu hệ thống - Mức độ thường xuyên truy vấn Một số nghiên cứu cho th y mức độ thường xuyên truy v n đến files dao động từ – lần Các tác giả phát hệ thống P2P có 10% số files truy v n nhiều nh t chiếm tới 60% tổng lưu thông mạng Ví dụ liệu mà nhiều người yêu thích (các file MP3 nhiều người truy cập) dẫn đến việc truy cập vào nút nhiều hơn, phải chịu tải nhiều node bình thường khác 37 2.4 Giải pháp cân tải sử dụng virtual node Đã có nhiều nghiên cứu cân tải tác giả đưa cho hệ thống mạng P2P dựa DHT Nói chung, giải pháp phân thành hai hướng chính: hướng tiếp cận dựa server ảo (virtual server) hướng tiếp cận không dựa server ảo Đối với hướng tiếp cận dựa server ảo node vật lý quản lý nhiều server ảo với định danh ngẫu nhiên chọn từ không gian định danh Các server ảo hoạt động node tham gia mạng DHT Trong hệ thống với node có khả đồng cao, node vật lý cần trì O(logn) server ảo để làm giảm nhân tố m t cân xuống đến số Với hệ thống DHT gồm nhiều node có khả chịu tải khác nhau, node vật lý chọn số lượng server ảo tỷ lệ với khả Sau báo cáo xin trình bày số thuật toán cân tải thực theo hướng Mô thuật toán loadbalancing sử dụng virtual node: Theo hướng node vật lý quản lý nhiều server ảo với định danh ngẫu nhiên chọn từ không gian định danh Các server ảo hoạt động node tham gia mạng P2P Trong hệ thống với node có khả đồng cao, node vật lý cần trì O(logn) server ảo để làm giảm nhân tố m t cân xuống đến số Với hệ thống P2P gồm nhiều node có khả chịu tải khác nhau, node vật lý chọn số lượng server ảo tỷ lệ với khả Tư tưởng giải thuật cân tải đơn giản, là: sử dụng log(N) virtual node cho node để cân không gian định danh node Log(N) virtual node mặc định tải phân bố không gian định danh cách đồng khả node Nếu số lượng virtual node node tăng lên định danh node phân bố đồng không gian định danh Điều đồng nghĩa với việc mức độ cân tải hệ thống cao Tuy nhiên, việc node vật lí có nhiều virtual node dẫn tới việc tăng thông tin quản trị nên giải thuật đưa giải pháp node có log(N) Virtual node Trong trình nhập mạng, node tự hình thành số VS VS nhập hệ thống cách độc lập 38 Stac k Stac k VNod e Capactity Node a V N b Node a b real node có Virtual real node có nhiều Virtual Node Node Hình 15: Phân vùng không gian node thật node ảo Đánh giá: Log(N) VS đơn giản hoạt động tốt với giả thiết phân bố tải đồng node có khả Tuy nhiên, việc tăng thêm số lượng VS làm nảy sinh số v n đề Thứ nhất, node ra/vào mạng thường xuyên, chúng phải mang theo VS node dẫn tới m t log(N) lần điều chỉnh Thứ hai, node phải tăng thêm log(N) lần việc lưu trữ thông tin quản trị VS thông tin tìm kiếm Bên cạnh đó, số bước tìm kiếm tăng lên hệ thống có nhiều VS Thuật toán transfer virtual node: Mỗi node vật lí chọn số lượng nh t định định danh định danh dành cho Virtual node Các node nặng tải sử dụng thuật toán Transfer liên hệ với node nhẹ tải để yêu cầu di chuyển phần tải (thực ch t gán lại virtual node node này) Giả sử gọi node H nặng tải, node L nhẹ tải Việc di chuyển virtual node V node phải thỏa mãn ràng buộc sau: - Việc di chuyển V từ H sang L không làm cho L thành node nặng tải - V VN “nhẹ nh t” di chuyển để H trở thành nhẹ tải 39 - Nếu virtual node di chuyển để H trở thành nhẹ tải di chuyển virtual node “nặng nh t” từ H sang L Transfe r Node H L LLLL L Hình 16: Transfer node ảo Thuật toán transfer node Giải thuật Transfer có 03 phương pháp di chuyển VS là: One – to – one, One – to – many Many – to – many Phương pháp One - to - One Phương pháp dựa quan hệ 1-1, nút l y cách ngẫu nhiên Một server ảo dịch chuyển khởi tạo nút chịu tải nặng nút lại chịu tải nhẹ Phương pháp dễ dàng thực mô hình phân tán Mỗi nút chịu tải nhẹ định kỳ l y ID ngẫu nhiên sau thực thao tác tìm kiếm để 40 tìm nút chịu trách nhiệm với ID Nếu nút nút chịu tải nặng dịch chuyển thực nút Trong phương pháp có nút chịu tải nhẹ thực thăm dò, nút tải nặng không thực b t thăm dò Đặc điểm phương pháp này: - Các nút tải nặng giảm bớt sức nặng việc thăm dò - Khi hệ thống tải r t nặng hầu hết nút chịu tải nặng nguy hiểm cho việc tải mạng khác bị th t bại - Nếu tải nút tương ứng với độ dài không gian ID mà nút sở hữu đầu dò ngẫu nhiên thực nút tải nhẹ để tìm nút tải nặng Phương pháp One - to - Many Không giống phương pháp phương pháp cho phép thời điểm nút tải nặng xem xét nhiều nút tải nhẹ L y h biểu thị cho nút tải nặng l y l1, l2, ,lk tập nút tải nhẹ xem xét h với cặp (h,li) l y server ảo vi Chọn nút tải nhẹ nh t mà làm cho nút h tải nhẹ, server số lượng server vi (1ik) dịch chuyển Chúng ta thực phương pháp việc trì Directory mà lưu trữ thông tin tải tập nút tải nhẹ hệ thống Sử dụng hệ thống DHT giống để lưu trữ Directory Giả sử có d Directory hệ thống Một nút tải nhẹ l băm vào Directory việc sử dụng hàm băm tốt h' mà cho ta giá trị đoạn [0,d) Một Directory i lưu trữ nút chịu trách nhiệm với ID h(i), h hàm băm khác Một nút chịu tải nhẹ l thông báo định kỳ tới tải đích tải để nút i=h(h'(l)), nút chịu trách nhiệm cho Directory h'(l) Lần lượt, nút tải nặng định kỳ l y mẫu Directory tồn Một nút tải nặng n l y ngẫu nhiên k=[0,d] gửi thông tin tải đích tải t t server ảo tới nút j=h(h'(k)) Ở nhận thông báo, nút j nút chịu tải nhẹ Directory nó, để tìm server ảo tốt nh t mà dịch chuyển từ n tới nút chịu tải nhẹ Directory Quá trình xử lý lặp lại t t nút trở thành tải nhẹ 41 Phương pháp Many - to - Many Phương pháp mở rộng hai phương pháp Trong phương pháp thứ nh t th y phù hợp với nút chịu tải nặng nút chịu tải nhẹ, phương pháp thứ phương pháp phù hợp với nút chịu tải nặng nhiều nút chịu tải nhẹ, phương pháp th y phù hợp với nhiều nút chịu tải nặng nhiều nút chịu tải nhẹ Phương pháp cho phép nhiều nút chịu tải nặng nhiều nút chịu tải nhẹ tương tác lẫn nhau, sử dụng khái niệm "Global pool" server ảo, bước trung gian di chuyển server ảo từ nút chịu tải nặng tới nút chịu tải nhẹ "Pool" c u trúc liệu sử dụng để tính toán vị trí cuối cùng; tải thực bị di chuyển thuật toán kết thúc Đánh giá: Một ưu điểm quan trọng giải thuật linh hoạt việc di chuyển VS từ node sang node khác (không giới hạn node hàng xóm) Bên cạnh đó, giải thuật r t phù hợp với việc sử dụng bảng băm phân tán việc di chuyển VS giống việc node vào (join) hay khỏi (leave) hệ thống DHT Tuy nhiên, phương pháp bộc lộ 02 nhược điểm quan trọng: Thứ nhất, việc trì Directory D node vật lí làm m t đặc điểm quan trọng hệ thống tính phân tán thực ch t số nodes phải liên hệ với Directory D để l y thông tin theo hình thức "tập trung" (tương tự Client Server) Trong trường hợp node chứa Directory D gặp cố, v n đề cân tải khu vực chắn bị ảnh hưởng nghiêm trọng Thứ hai, node chứa Directory D xác định, thay đổi nên điểm yếu dễ bị t n công, hậu tương nhự nhược điểm thứ nh t, v n đề cân tải thực Nhận xét: Qua việc phân tích đánh giá giải thuật cân tải tiếp cận theo hướng sử dụng server ảo rút nhận xét, giải pháp sử dụng server ảo tồn số yếu điểm, chẳng hạn để quản lý server ảo node phải trì nhiều liên kết đến server ảo đó, thông thường số liên kết O(logn) 42 TÀI LIỆU THAM KHẢO [1] Peer-to-Peer Working Group Homepage http://www.peer-topeerwg.org/index.html [2] Chord: A Scalable Peer-to-peer Lookup Service for Internet Applications - Ion Stoica, Robert Morris, David Karger, M Frans Kaashoek, Hari Balakrishnan_ MIT Laboratory for Computer Science [3] P2P-Based Software Engineering Management [4] A Peer-to-Peer Architecture for Media Streaming [5] Load Balancing Algorithm for DHT Based Structured Peer to Peer System International Journal of Emerging Technology and Advanced Engineering [6] Simple Efficient Load Balancing Algorithms for Peer-to-Peer Systems [7] Building and Querying a P2P Virtual World [8] http://pdos.lcs.mit.edu/chord/ [9] Load Balancing in P2P networks using DHT based systems and Ant based systems: A Comparison G T Chavan, M A Mahajan Asst Prof Sinhgad College of Engineering, Pune M.E Student Sinhgad College of Engineering, Pune 43 III Phần tổng kết Các vấn đề báo cáo đạt - Báo cáo hoàn thành theo thời gian quy định, đầy đủ nội dung theo yêu cầu củ đề cương - Nội dung báo cáo trình bày theo mẫu yêu cầu Viện CDIT Các vấn đề báo cáo chưa đạt Phần CHƯƠNG II: CÂN BẰNG TẢI TRONG MẠNG NGANG HÀNG CÓ CẤU TRÚC nội dung chưa đa dạng, phong phú Hạn chế tồn Do thời gian thực tập không dài kiến thức em lĩnh vực nhiều hạn chế, chưa tham khảo nhiều tài liệu nhiều quốc gia đề tài nên Báo Cáo Thực Tập nhiều thiếu sót, hạn chế nội dung Hướng nghiên cứu Lập trình phát triển hệ thống thử nghiệm với mục tiêu: • Triển khai hạ tầng mô hình mạng P2P • Chương trình demo giao thức thuật toán DHT cho yêu cầu nghiệp vụ chia sẻ file … • Minh họa giải thuật cân tải cho mạng sử dụng giải pháp virtual node Nguyện vọng Qua thời gian thực tập tuần Viện công nghệ thông tin truyền thông CDIT, thân em rút nhiều kinh nghiệm Được làm việc với thầy giáo, cô giáo môi trường làm việc nghiêm túc, vui vẻ, sáng tạo giúp em có thêm nhiều động lực học tập trách nhiềm với ngành nghề mà theo học Sau thời gian Thực Tập Tốt Nghiệp này, em r t mong có nhiều hội học tập làm việc Viện Em hứa nỗ lực để làm tốt vai trò sinh viên Trường Học Viện Công Nghệ Bưu Chính, thực tập sinh Viện công nghệ thông tin truyền thông CDIT để góp phần xây dựng Công Nghiệp Công Nghệ Thông Tin vững mạnh cho nước nhà 44