Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 62 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
62
Dung lượng
1,6 MB
Nội dung
1 ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ LÊ ANH TUẤN ĐỊNH TUYẾN AN TOÀN TRONG CẤU TRÚC BẢNG BĂM PHÂN TÁN CHORD KÉP Ngành: Công nghệ thông tin Chuyên ngành: Truyền dữ liệu và Mạng máy tính Mã số: LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN NGƯỜI HƯỚNG DẪN KHOA HỌC: TS. Nguyễn Đại Thọ Hà Nội - 2014 2 Lời cam đoan Tôi xin cam đoan: - Luận văn này là sản phẩm nghiên cứu của tôi. - Các số liệu, kết quả nêu trong luận văn chưa từng được cá nhân, tổ chức nào công bố trong bất kỳ công trình nào khác. - Các thông tin trích dẫn đã được chỉ rõ nguồn gốc. Học viên Lê Anh Tuấn 3 MỤC LỤC DANH MỤC KÝ HIỆU VÀ CHỮ VIẾT TẮT 5 DANH MỤC CÁC HÌNH ẢNH, ĐỒ THỊ 6 MỞ ĐẦU 8 CHƯƠNG 1: TỔNG QUAN VỀ MẠNG NGANG HÀNG 10 1.1. Khái niệm mạng ngang hàng 10 1.2. Các ứng dụng của mạng ngang hàng 10 1.3. Các mô hình mạng ngang hàng 12 1.3.1. Mạng ngang hàng không có cấu trúc 12 1.3.2. Mạng ngang hàng có cấu trúc 13 1.4. Cấu trúc chỉ mục phân tán Chord 16 CHƯƠNG 2: AN NINH CHO CẤU TRÚC CHỈ MỤC PHÂN TÁN 20 2.1. Giới thiệu 20 2.2. Tấn công dữ liệu và phương pháp phòng chống 20 2.3. Tấn công lợi dụng quá trình cấp phát định danh 21 2.3.1. Tấn công giả mạo và phương pháp phòng chống 21 2.3.2. Tấn công che khuất và phương pháp phòng chống 22 2.4. Tấn công định tuyến và phương pháp phòng chống 23 2.4.1. Định tuyến tương tác 25 2.4.2. Giá trị khoảng cách trung bình 25 2.4.3. Quá trình xác thực 26 2.4.4. Thuật toán quay lui 27 CHƯƠNG 3: CẤU TRÚC CHỈ MỤC PHÂN TÁN CHORD KÉP 29 3.1. Giới thiệu 29 3.2. Cấu trúc chỉ mục Chord kép 29 3.3. Định tuyến trong mạng Chord kép 31 3.4. Hiệu năng của mạng Chord kép 34 CHƯƠNG 4: MÔ PHỎNG VÀ ĐÁNH GIÁ HIỆU NĂNG ĐẢM BẢO AN NINH ĐỊNH TUYẾN CHO MẠNG CHORD KÉP 37 4.1. Tóm tắt những vấn đề an ninh 37 4.2. Xây dựng thủ tục định tuyến 38 4.3. Chương trình mô phỏng 42 4.3.1. Giới thiệu 42 4 4.3.2. Cấu trúc chương trình thử nghiệm 45 4.3.3. Khảo sát và đánh giá 46 4.3.3.1. Nhiễm độc có tính chất không hồi đáp truy vấn 47 4.3.3.2. Nhiễm độc có tính chất chuyển tiếp ngẫu nhiên các truy vấn 47 4.3.3.3. Các nút nhiễm độc thông đồng tạo vòng định tuyến nhỏ 49 KẾT LUẬN 52 TÀI LIỆU THAM KHẢO 54 PHỤ LỤC 56 1. Cấu trúc chương trình thử nghiệm 56 2. Một số các sửa đổi cơ bản trong chương trình mô phỏng 58 5 DANH MỤC KÝ HIỆU VÀ CHỮ VIẾT TẮT Chữ viết tắt Giải thích BChord Bi-directional Routing DHT based on Chord: Chord kép CAN Content Addressable Network DHT Distributed Hash Tables: Bảng băm phân tán IP Internet Protocol: Giao thức liên mạng PPLive DOnet GridMedia Ứng dụng chia sẻ nội dung đa phương tiện trực tuyến P2P Peer-to-Peer network: mạng ngang hàng SHA-1 Secure Hash Algorithm - 1: Các thuật toán băm an toàn phiên bản 1 TTL Time-to-live: định khoảng thời gian vòng đời 6 DANH MỤC CÁC HÌNH ẢNH, ĐỒ THỊ Hình 1.1. Mô tả cấu trúc một mạng ngang hàng. 10 Hình 1.2. Mô tả kỹ thuật tìm kiếm trong mạng Gnutella 13 Hình 1.3. Tìm kiếm và gia nhập mạng CAN 14 Hình 1.4. Trạng thái nút có định danh 10233102 trong Pastry 15 Hình 1.5. Mô hình bảng băm phân tán 16 Hình 1.6. Mô tả mạng Chord có 6-bit định danh 17 Bảng 1.1. Định nghĩa bảng chỉ mục phân tán Chord 17 Hình 1.7. Mô tả bảng chỉ mục phân tán tại một nút trên Chord 18 Hình 1.8. Mã giả thuật toán tìm successor(id) 18 Hình 1.9. Mô tả quá trình tìm successor của khóa K54 19 Hình 1.10. Mô tả quá trình nút N26 gia nhập mạng Chord 19 Hình 2.1. Một kiểu tấn công Sybil 22 Hình 2.2. Mô tả kiểu tấn công che khuất Eclipse 23 Hình 2.3. Ảnh hưởng của nút nhiễm độc đến sự thành công truy vấn 23 Hình 2.4. Mô tả một kiểu tấn công định tuyến nhắm vào bảng chỉ mục 24 Hình 2.5. Mô tả khái niệm khoảng cách trung bình giữa các nút 26 Hình 2.6. Mô tả quá trình xác định chỉ mục trỏ đến f 26 Hình 2.7. Mô tả thuật toán quay lui 28 Hình 3.1. Cấu trúc chỉ mục theo chiều ngược 30 Hình 3.2. Cấu trúc chỉ mục theo chiều thuận 30 Hình 3.3. Mô tả cấu trúc chỉ mục Chord kép của nút N8. 31 Hình 3.4. Mô tả quá trình định tuyến trong Chord so với Chord kép 32 Hình 3.5. Mã giả thủ tục cho nút mới gia nhập mạng 34 Hình 3.6. So sánh pL giữa 2 giao thức trong không gian định danh m=4 34 Hình 3.7. Thông điệp quảng bá trong mạng Chord kép với n=4 35 Hình 3.8. Thông điệp quảng bá trong mạng Chord với n=4 36 Hình 4.1. Mô tả các tính chất của nút nhiễm độc 38 7 Hình 4.2. Cấu trúc chỉ mục phân tán Chord kép 39 Hình 4.3. Sơ đồ khối thủ tục định tuyến trong mô hình mạng Chord kép 40 Hình 4.4. Mô tả quá trình tìm kiếm khóa K3 và khóa K29 41 Hình 4.5. Mô tả khái niệm khoảng cách trung bình giữa các nút trong mô hình mạng Chord kép. 43 Hình 4.6. Giao diện chính của chương trình mô phỏng 44 Hình 4.7. Biểu đồ mô tả mối tương quan về tỷ lệ truy vấn thành công trước (default) và sau khi áp dụng các giải pháp an ninh (secure) 47 Hình 4.8. Mô tả tỷ lệ truy vấn thành công trước và sau khi áp dụng các biện pháp an ninh với độ lệch chuẩn =3 48 Hình 4.9. Giá trị trung bình bước nhảy khi áp dụng các giải pháp an ninh 48 Hình 4.10. Mô tả tỷ lệ truy vấn thành công trong môi trường bị nhiễm độc có tính chất thông đồng với tham số độ lệch chuẩn (std.Deviation)=3 50 Hình 4.11. Sự ảnh hưởng của độ lêch chuẩn với tỷ lệ truy vấn thành công 50 Hình 4.12. Giá trị bước chuyển tiếp truy vấn trung bình dưới sự ảnh hưởng của độ lêch chuẩn 51 8 MỞ ĐẦU Mạng ngang hàng là mô hình mạng được ứng dụng rộng rãi trong lĩnh vực công nghệ thông tin đặc biệt là mạng diện rộng như Internet, từ các ứng dụng đơn giản như chia sẻ file, dữ liệu, truyền hình trực tuyến, trên nền Internet đến những ứng dụng phức tạp hơn như hệ thống truy vấn dữ liệu, hệ quản trị cơ sở dữ liệu, Mô hình mạng ngang hàng không có cấu trúc với ưu điểm dễ triển khai, khả mở nhưng lại tồn tại những nhược điểm cốt yếu như: không có tính định hướng, mỗi yêu cầu tìm kiếm thường được chuyển đến một số lượng lớn các nút trong mạng gây tiêu tốn băng thông, thời gian tìm kiếm và không đảm bảo truy vấn sẽ thành công vì không có bất kỳ mối quan hệ nào giữa nút mạng với dữ liệu mà nó đang quản lý. Mạng ngang hàng có cấu trúc với việc ứng dụng bảng băm phân tán định nghĩa liên kết giữa các nút trong mạng theo một nguyên tắc cụ thể, đồng thời xác định chặt chẽ mỗi nút chịu trách nhiệm đối với một phần dữ liệu chia sẻ nên đã khắc phục được những nhược điểm của mô hình mạng ngang hàng không cấu trúc. Với cấu trúc chỉ mục phân tán dựa trên DHT mạng ngang hàng có cấu trúc Chord đã cho thấy một kiến trúc định tuyến hiệu quả, có tính tự tổ chức và khả mở cao [6]. Tuy nhiên, cùng với những ưu điểm của mô hình mạng ngang hàng có cấu trúc, mạng ngang hành Chord cũng tồn tại những vấn đề về an ninh và đặc biệt là an toàn trong quá trình định tuyến. Kẻ tấn công khi đã làm chủ được quá trình định tuyến trong mạng có thể điều khiển, khống chế hoạt động truyền thông của các nút mạng. Nút bị nhiễm độc thay vì chuyển các truy vấn định tuyến đến đích thì chúng loại bỏ hoặc chuyển đến một nút đích sai theo ý đổ của kẻ tấn công, từ đó làm giảm độ tin cậy của toàn mạng. Đã có những giải pháp khắc phục và chống lại cuộc tấn công vào quá trình định tuyến như giải pháp của Keith Needels (2008) trong bài báo [8] hoặc phương pháp cải tiến của Nguyễn Minh Thăng (2013) trong bài báo [10] và chúng đã được chứng minh là khá tốt và hiệu quả. Mạng ngang hàng Chord kép (BChord) [5] được thiết kế dựa trên mạng Chord, là sự mở rộng của mạng Chord về khả năng định tuyến, giờ đây các nút 9 trong mạng Chord kép có thể định tuyến theo hai chiều, cùng chiều kim đồng hồ (kế thừa từ Chord) và ngược chiều kim đồng hồ. Với việc xây dựng cấu trúc chỉ mục mới, mạng Chord kép đã cho thấy khả năng định tuyến hiệu quả hơn mạng Chord. Tuy nhiên cũng như các mạng ngang hàng khác, nó cũng tồn tại những vấn đề mất gây mất an toàn trong quá trình định tuyến, nút nhiễm độc có thể không hồi đáp hoặc loại bỏ các truy vấn chuyển qua nó, thay đổi đích đến của truy vấn làm sai lệch kết quả truy vấn, vì vậy khắc phục những vấn đề an ninh định tuyến trên Chord kép cũng cần phải được nghiên cứu và giải quyết. Hiện tại chưa có giải pháp an ninh định tuyến nào được xây dựng cho mạng Chord kép. Mục tiêu của luận văn là xây dựng thủ tục định tuyến hiệu quả và ứng dụng các giải pháp chống tấn công định tuyến của Keith Needels trong bài báo [8] trên Chord để áp dụng cho mạng Chord kép. Cấu trúc của luận văn bao gồm 4 chương: - Chương 1 giới thiệu các khái niệm, tổng quan về mạng ngang hàng. - Chương 2 giới thiệu tổng quan các vấn đề an ninh và phòng chống tấn công trong cấu trúc chỉ mục phân tán. - Chương 3 trình bày cấu trúc chỉ mục trong mô hình mạng ngang hàng Chord kép. - Chương 4 giới thiệu chi tiết việc xây dụng thủ tục định tuyến trong cấu trúc chỉ mục Chord kép cùng với việc áp dụng các giải pháp an ninh theo [8] qua việc sửa đổi chương trình mô phỏng đồng thời là các đánh giá hiệu năng của các giải an ninh định tuyến đã nêu trong mạng Chord kép. 10 CHƯƠNG 1: TỔNG QUAN VỀ MẠNG NGANG HÀNG 1.1. Khái niệm mạng ngang hàng Mạng ngang hàng (peer-to-peer network) là mô hình mạng máy tính phân tán phi tập trung, các thành phần tham gia được gọi là các nút (nodes/ peers) nối với nhau qua các liên kết, có chức năng vừa là máy chủ, vừa là máy khách. Mỗi tác vụ (tra cứu, phát lại các đoạn video, tải file, ) được chia sẻ giữa các nút qua các liên kết mạng, mỗi nút lại tự đóng góp một phần tài nguyên sẵn có (băng thông, dung lượng bộ nhớ, ) của mình cho hệ thống vì vậy thông tin được chia sẻ giữa các nút mà không cần thiết phải có máy chủ trung tâm và vẫn hoạt động tốt cả khi có một số nút gặp sự cố. Hình 1.1. Mô tả cấu trúc một mạng ngang hàng. 1.2. Các ứng dụng của mạng ngang hàng Mô hình mạng ngang hàng được ứng dụng rộng rãi trong trong thực tế từ những ứng dụng cơ bản như chia sẻ file, cung cấp các nội dung video, điện thoại trực tuyến đến những ứng dụng cho tính toán phân tán, đào tạo trực tuyến, - Hệ thống chia sẻ tập tin (file): là một loại ứng dụng cơ bản của mô hình mạng ngang hàng, các ứng dụng này kết nối các nút tham gia cho phép phân phối và tải về các tệp tin giữa các nút. Tiêu biểu là BitTorrent (với giao thức bitTorrent), eDonkey2000 (với giao thức overnet), KaZaA (với giao thức fastTrack) và những hệ thống tương đương, rất hiệu quả trong việc phổ biến và chia sẻ file trên mạng Internet nhất là các file lớn. BitTorrent sử dụng 1 chương trình ứng dụng có gọi là BitTorrent client, mỗi BitTorrent client có khả năng so sánh, yêu cầu và vận chuyển file trên hệ thống sử dụng giao thức bitTorrent, file có thể chứa bất kỳ thông tin nào, bao gồm cả văn bản, âm thanh, phim và nội dung đã được mã hóa. Tốc độ tải về của file phụ thuộc vào số lượng các nút tham gia chia sẻ. BitTorrent [...]... Mô tả cấu trúc chỉ mục Chord kép của nút N8 [5] đã đưa ra quy tắc cho cấu trúc chỉ mục Chord kép mà chưa xây dựng thủ tục định tuyến/ truy vấn cụ thể Việc đề xuất và xây dựng chi tiết thủ tục định tuyến cho Chord kép sẽ được đề cập tại chương 4 của luận văn 3.3 Định tuyến trong mạng Chord kép Được xem như phần mở rộng của mạng Chord, mạng Chord kép kế thừa hoàn toàn các thuộc tính của giao thức Chord. .. xuất cải thiện việc truy vấn và định tuyến trong mô hình mạng Chord bằng cách xây dựng quy tắc sao cho mô hình mạng mới có khả năng định tuyến theo 2 chiều, mô hình mạng mới này gọi là Chord kép (Bi -Chord) Cấu trúc chỉ mục Chord kép được xem là phần mở rộng của cấu trúc chỉ mục Chord khi thêm vào chiều ngược lại Với cấu trúc chỉ mục mới, các nút trên vòng Chord có thể định tuyến theo 2 chiều, cùng chiều... 1.5 Mô hình bảng băm phân tán (Wikipedia) Mạng ngang hàng Chord: sử dụng hàm băm SHA-1 (hàm băm được giới thiệu năm 1995 bởi Cơ quan an ninh Quốc gia Mỹ, gồm 160 bit định danh) và kỹ thuật “consistent hashing” để gán khóa cho mỗi nút Trong đó, định danh của nút (identifier) có được nhờ băm địa chỉ IP, băm nội dung thông điệp, dữ liệu, sẽ cho giá trị định danh của khóa (key) Các định danh được tổ... nút có định danh gần với định danh của khóa nhất Mỗi nút chịu trách nhiệm quản lý môt hoặc một tập hợp các khóa Để định tuyến, mỗi nút lưu giữ các thông tin gồm: bảng định tuyến (routing table) chứa các tham chiếu tới nút khác trong không gian định danh; tập các nút cận (neightborhood set) và tập các lá (leaf set) chứa các định danh gần với định danh của nút nhất Bảng định tuyến tại một nút trong Pastry... ngang hàng có cấu trúc Khắc phục nhược điểm của mạng ngang hàng không có cấu trúc, mạng ngang hàng có cấu trúc sử dụng hệ thống bảng băm phân tán (DHT) Hệ thống này định nghĩa liên kết giữa các nút trong mạng phủ theo một thuật toán cụ thể: xác định khóa (key) cho mẫu dữ liệu, ánh xạ khóa vào nút mạng, đồng thời xác định chặt chẽ mỗi nút sẽ chịu trách nhiệm đối với một phần dữ liệu chia sẻ Với cấu trúc. .. n.finger[i] (chi tiết xem bảng 1.1 dưới đây): Ký hiệu finger[i] successor predecessor Định nghĩa Nút đầu tiên trên vòng tròn định danh kế tiếp giá trị: (n+2i-1) mod 2m, 1 ≤ i ≤ m Nút tiếp theo trên vòng tròn định danh finger[1].node Nút liền trước trên vòng tròn định danh Bảng 1.1 Định nghĩa bảng chỉ mục phân tán Chord Ví dụ: tổ chức bảng chỉ mục phân tán của nút N8 trên vòng tròn định danh có 6-bit, chỉ mục... trên thì vị trí đó trong bảng định tuyến để trống Để định tuyến tìm khóa k, ban đầu nút sẽ kiểm tra trong phạm vi tập lá, chuyển tới nút đánh số gần với khóa k nhất Nếu khóa k không nằm trong tập lá, nút sẽ tìm kiếm trong bảng định tuyến chuyển truy vấn tới nút có số lượng chữ số đầu trong định danh giống với số đầu trong khóa k nhất Hình dưới đây mô tả thông tin lưu tại nút có định danh nodeID = 10233102,... tìm vị trí các successor(k) được mô tả tại phần dưới đây 16 1.4 Cấu trúc chỉ mục phân tán Chord Bảng băm phân tán: được xem như là một cấu trúc dữ liệu phân tán, có khả năng cung cấp dịch vụ tra cứu/ tìm kiếm tương tự như một bảng băm, các cặp (khóa, giá trị) được lưu trữ trong DHT và ánh xạ vào các nút của hệ phân tán Bất kỳ 1 nút nào trong hệ thống cũng có thể tìm và lấy được giá trị liên kết với... thời gian nhiều gấp đôi thời gian cần để phát quảng bá tới tất cả các nút (4 bước chuyển) Giả sử gọi CM(n) thời gian trung bình để thông điệp đi tới các nút trong mạng Chord trong không gian định danh 2n BM(n) thời gian trung bình để thông điệp đi tới các nút trong mạng Chord kép trong không gian định danh 2n MR(n) tỷ lệ so sánh trung bình của mạng Chord kép và mạng Chord Theo [5] thì MR(n) = 𝐵𝑀(𝑛)... mục trong mỗi hàng, thứ tự hàng trong bảng định tuyến được tính từ 0, hàng 0 là hàng trên cùng của bảng, trong bảng định tuyến của nút n, mục ở hàng thứ i chứa các định danh của nút có i số đầu tiên 15 trong nodeID giống với i số đầu tiên trong nodeID của nút n, việc so sánh này được tính lần lượt từng vị trí tương ứng với nhau của hai định danh và bắt đầu từ số đầu tiên bên trái Nếu không có định danh . CHƯƠNG 3: CẤU TRÚC CHỈ MỤC PHÂN TÁN CHORD KÉP 29 3.1. Giới thiệu 29 3.2. Cấu trúc chỉ mục Chord kép 29 3.3. Định tuyến trong mạng Chord kép 31 3.4. Hiệu năng của mạng Chord kép 34 CHƯƠNG. thái nút có định danh 10233102 trong Pastry 15 Hình 1.5. Mô hình bảng băm phân tán 16 Hình 1.6. Mô tả mạng Chord có 6-bit định danh 17 Bảng 1.1. Định nghĩa bảng chỉ mục phân tán Chord 17 Hình. 1.4. Cấu trúc chỉ mục phân tán Chord Bảng băm phân tán: được xem như là một cấu trúc dữ liệu phân tán, có khả năng cung cấp dịch vụ tra cứu/ tìm kiếm tương tự như một bảng băm, các cặp