Hình 1.9: Tổng quan về NS-2 dưới góc độ người dùng
OTcl Script Kịch bản OTcl
Simulation Program Chƣơng trình Mô phòng
OTcl Bộ biên dịch Tcl mở rộng hƣớng đối tƣợng
NS Simulation Library Thƣ viện Mô phỏng NS
Event Scheduler Objects Các đối tƣợng Bộ lập lịch Sự kiện
Network Component Objects Các đối tƣợng Thành phần Mạng
Network Setup Helping Modules Các mô đun Trợ giúp Thiết lập Mạng
Simulation Results Các kết quả Mô phỏng
Analysis Phân tích
NAM Network Animator Minh họa Mạng NAM
Trong hình trên, NS là Bộ biên dịch Tcl mở rộng hƣớng đối tƣợng; bao gồm các đối tƣợng Bộ lập lịch Sự kiện, các đối tƣợng Thành phần Mạng và các mô đun Trợ giúp Thiết lập Mạng (hay các mô đun Plumbing).
Để sử dụng NS-2, user lập trình bằng ngôn ngữ kịch bản OTcl. User có thể thêm các mã nguồn Otcl vào NS-2 bằng cách viết các lớp đối tƣợng mới trong OTcl. Những lớp này khi đó sẽ đƣợc biên dịch cùng với mã nguồn gốc. Kịch bản OTcl có thể thực hiện những việc sau:
- Khởi tạo Bộ lập lịch Sự kiện
- Thiết lập Mô hình mạng dùng các đối tƣợng Thành phần Mạng
- Báo cho nguồn traffic khi nào bắt đầu truyền và ngƣng truyền packet trong Bộ lập lịch Sự kiện
Phụ thuộc vào mục đích của ngƣời dùng đối với kịch bản mô phỏng OTcl mà kết quả mô phỏng có thể đƣợc lƣu trữ nhƣ file trace. Định dạng file trace sẽ đƣợc tải vào trong các ứng dụng khác để thực hiện phân tích:
- File nam trace (file.nam) đƣợc dùng cho công cụ Minh họa mạng NAM
- File Trace (file.tr) đƣợc dùng cho công cụ Lần vết và Giám sát Mô phỏng XGRAPH hay TRACEGRAPH
Hình 1.10: Luồng các sự kiện cho file Tcl chạy trong NS
NAM Visual Simulation Mô phỏng ảo NAM
Tracing and Monitoring Simulation Mô phỏng Lần vết và Giám sát
Ở chƣơng 1 này tác giả đã nêu tổng quan các đặc điểm về mạng MANET, các vấn đề an ninh trong mạng MANET, bao gồm: Các thách thức khi xây dựng một giải pháp an ninh; Các mối đe dọa an ninh, trong đó, tập trung chủ yếu vào việc phân tích các hình thức tấn công trong tầng mạng, cụ thể là các cuộc tấn công trong giao thức định tuyến; Chỉ ra một số giải pháp tăng cƣờng an ninh trong giao thức định tuyến mạng MANET. Dựa trên việc phân tích, đánh giá các ƣu nhƣợc điểm của các giải pháp có sẵn, tác giả lựa chọn xây dựng một giải pháp tăng cƣờng an ninh cho giao thức định tuyến AODV, một giao thức hoạt động rất hiệu quả trong mạng MANET. Chi tiết về giải pháp đƣợc trình bày chi tiết trong chƣơng 2 của luận văn.
Chƣơng 2: GIẢI PHÁP CHỐNG TẤN CÔNG GIAO THỨC ĐỊNH TUYẾN AODV TRONG MẠNG MANET
Đã có rất nhiều nghiên cứu nhằm bổ sung các cơ chế an ninh cho giao thức AODV để chống lại các kiểu tấn công. Có những giải pháp mang tính tổng quát chống lại đƣợc nhiều kiểu tấn công nhƣ SAODV [15], ARAN [17],… cũng có những giải pháp cải tiến để chống lại từng kiểu tấn công dựa trên đặc điểm của chúng. Ví dụ: Một số giải pháp chống tấn công blackhole trong giao thức định tuyến AODV nhƣ: Giải pháp sử dụng bảng thông tin định tuyến mở rộng (EDRI table) [12], giải pháp GAODV [11], giải pháp lựa chọn đƣờng đi không phải là đƣờng đi ngắn nhất để loại trừ blackhole,...
Các giải pháp tổng thể nhƣ SAODV, ARAN,…chống đƣợc nhiều kiểu tấn công. Tuy nhiên:
Đối với SAODV: Do mỗi nút khi tham gia vào mạng, tự nó tạo ra cặp khóa bí mật, công khai có liên hệ với địa chỉ IP nên có thể bị tấn công theo kiểu tấn công giả mạo – impersonation attacks (Nút độc hại có thể tạo cho nó nhiều cặp khóa công khai bí mật, tƣơng ứng với nhiều địa chỉ IP để tham gia vào mạng). Ngoài ra chi phí cho việc sử dụng chữ ký số lớn dẫn đến việc dễ bị tấn công theo kiểu phát tràn gói tin RREQ, tiêu hủy hiệu năng của mạng do SAODV không có cơ chế phát hiện, chống lại kiểu tấn công này.
Đỗi với ARAN: Yêu cầu có một trung tâm chứng thực T, mỗi nút khi tham gia vào mạng thì phải gửi yêu cầu để đƣợc cấp chứng chỉ, nhƣợc điểm là phải có thêm cơ sở hạ tầng cho việc triển khai trung tâm chứng thực riêng. Hơn nữa, trong quá trình định tuyến, mỗi nút đều thực hiện quá trình xác thực và ký dẫn tới chi phí cực lớn, gây trễ lớn. Trong ARAN cũng không có cơ chế theo dõi lƣợng gói tin RREQ gửi bởi một nút nên cũng có khả năng bị tấn công phát tràn RREQ.
Các giải pháp cải tiến giao thức dựa trên đặc điểm của từng loại tấn công, không sử dụng xác thực nên dễ bị tấn công theo kiểu giả mạo, hoặc bị kẻ tấn công nghiên cứu lại hoạt động của giao thức để vƣợt qua.
Việc nghiên cứu một giải pháp toàn diện đòi hỏi đáp ứng cả vấn đề an ninh lẫn phù hợp với điều kiện thực tế, đáp ứng hiệu năng trong mạng MANET thực sự là một thách thức lớn hiện nay. Trong khuôn khổ luận văn, tác giả có đƣa ra một số cải tiến nhỏ, tạm gọi là giao thức AODVLV nhƣ sau:
- Luận văn giả sử tồn tại một trung tâm chứng thực CA, mỗi nút khi tham gia vào mạng sẽ liên lạc với CA để đƣợc cấp chứng chỉ tham gia truyền thông
trong mạng. Tất cả các nút đều biết khóa công khai của CA để chứng thực các nút khác. Nút nguồn sử dụng chứng chỉ đƣợc cấp để ký vào gói tin định tuyến, mã băm đƣợc sử dụng để xác thực trƣờng hop count, sau đó gửi kèm chứng chỉ số, chữ ký số và mã băm. Các nút trung gian thực hiện xác thực chữ ký, xác thực hop count và phát chuyển tiếp khi chữ ký đúng và hop count đúng. Quá trình cứ tiếp tục cho tới khi đến đƣợc nút đích. Tƣơng tự đối với quá trình đáp ứng tuyến và thông báo lỗi.
- Do việc sử dụng chữ ký số đòi hỏi các nút phải gửi kèm chứng chỉ của nó trong gói tin định tuyến nên dẫn tới kích thƣớc gói tin lớn hơn nhiều (mỗi chứng chỉ khoảng 1000 byte). Nên để giảm kích thƣớc gói tin tác giả có sử dụng thêm kỹ thuật nén và giải nén chứng chỉ.
- Cải tiến, cài đặt bổ sung cơ chế phát hiện, chống tấn công flooding RREQ cho giao thức AODVLV.